UNPKG

react-concurrent-router

Version:

Performant routing embracing React concurrent UI patterns

34 lines (30 loc) 669 B
'use strict'; var React = require('react'); var RouterContext = require('./RouterContext-BCgWDPs4.js'); const useHistory = () => { const { history: { length, location, action, index, entries }, subscribe } = React.useContext(RouterContext.RouterContext); const [lastUpdate, setLastUpdate] = React.useState(new Date().getTime()); React.useEffect(() => { const dispose = subscribe(async () => { setTimeout(() => setLastUpdate(new Date().getTime()), 1); }); return () => dispose(); }, []); return { length, location, action, index, entries }; }; module.exports = useHistory;