Why does `useLocation` re-render before navigation? - TanStack