22 lines
519 B
TypeScript
22 lines
519 B
TypeScript
import { useMemo } from 'react';
|
|
import { useNavigate } from 'react-router';
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
export function useRouter() {
|
|
const navigate = useNavigate();
|
|
|
|
const router = useMemo(
|
|
() => ({
|
|
back: () => navigate(-1),
|
|
forward: () => navigate(1),
|
|
refresh: () => navigate(0),
|
|
push: (href: string) => navigate(href),
|
|
replace: (href: string) => navigate(href, { replace: true }),
|
|
}),
|
|
[navigate]
|
|
);
|
|
|
|
return router;
|
|
}
|