I like to prefetch some data ahead of time so I prepared the routes and the loader like below and I'm getting infinite loop. Someone to suggest what is wrong and how I fix this.
homeLoader function:
homeLoader: async (queryClient) => {
queryClient.ensureQueryData(['someKey'], doSomething);
return redirect(`workspaces/1`); // Infinite loop happens
}
};
router for the RouterProvider:
createBrowserRouter(
createRoutesFromElements(
<Route
path='/'
element={<Home />}
loader={() => homeLoader(queryClient)} // React Query injected
>
<Route path='workspaces' element={<Workspaces />}>
<Route path=':workspaceId' element={<Workspace />} />
</Route>
</Route>
)
)
<RouterProvider router={router} />
React and Router versions:
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-router-dom": "^6.14.2"