import { useLocation } from 'react-router-dom';
I'm currently using Nextjs, I need help for an equivalent of useLocation
`
import Link from 'next/link';
import { FC } from 'react';
import {useRouter} from 'next/router';
import { useStore } from '../store';`
const PrivateRoute: FC = ({ children }) => {
const currentUser = useStore((state) => state.currentUser);
const location = useRouter();`
if (!currentUser)
return (
<Link
href={`/sign-in?redirect=${encodeURIComponent(
location.pathname + location.push('chat')
)}`}
/>
);
return <>{ children }</>
}
export default PrivateRoute;`
You can use useRouter from 'next/router' and then you can either use pathname or asPath and then you conditionally add slug or params. Rest you can find more information via documentation posted by others.
Yea you can use useNavigate
in react-router-dom v6
and you can use useHistory
in react-router-dom < v6