react-concurrent-router
Version:
Performant routing embracing React concurrent UI patterns
20 lines (17 loc) • 497 B
JavaScript
import { useContext, useState, useEffect } from 'react';
import { R as RouterContext } from './RouterContext-Bf2jDrm9.js';
const useParams = () => {
const {
get,
subscribe
} = useContext(RouterContext);
const [params, setParams] = useState(get().params);
useEffect(() => {
const dispose = subscribe(async nextEntry => {
setTimeout(() => setParams(nextEntry.params), 1);
});
return () => dispose();
}, []);
return params;
};
export { useParams as default };