Skip to content

Commit 0f6e21b

Browse files
committed
fix: query client and router provider order
1 parent f59d37a commit 0f6e21b

File tree

2 files changed

+34
-33
lines changed

2 files changed

+34
-33
lines changed

src/main.tsx

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import './i18n';
55

66
// Import the generated route tree
77
import { routeTree } from './routeTree.gen';
8+
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
89

910
// Create a new router instance
1011
const router = createRouter({ routeTree });
@@ -16,13 +17,30 @@ declare module '@tanstack/react-router' {
1617
}
1718
}
1819

20+
// Create a new query client instance
21+
const queryClient = new QueryClient({
22+
defaultOptions: {
23+
mutations: {
24+
onError: (error) => {
25+
console.error('Mutation error:', error);
26+
},
27+
},
28+
queries: {
29+
retry: 1,
30+
staleTime: 1000 * 60, // 1 minute
31+
},
32+
},
33+
});
34+
1935
// Render the app
2036
const rootElement = document.getElementById('root')!;
2137
if (!rootElement.innerHTML) {
2238
const root = ReactDOM.createRoot(rootElement);
2339
root.render(
2440
<StrictMode>
25-
<RouterProvider router={router} />
41+
<QueryClientProvider client={queryClient}>
42+
<RouterProvider router={router} />
43+
</QueryClientProvider>
2644
</StrictMode>,
2745
);
2846
}

src/routes/__root.tsx

Lines changed: 15 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import { createRootRoute, Outlet, redirect, useRouterState } from '@tanstack/rea
22
import { TanStackRouterDevtools } from '@tanstack/router-devtools';
33
import '../index.css';
44
import { ErrorBoundary } from '../components/ErrorBoundary';
5-
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
65
import { useBlueskyStore } from '../lib/bluesky/store';
76
import { Toaster } from 'sonner';
87
import { ReactQueryDevtools } from '@tanstack/react-query-devtools/production';
@@ -11,21 +10,6 @@ import { cn } from '../lib/utils';
1110
import { Navbar } from '../components/Navbar';
1211
import i18n from '../i18n';
1312

14-
// Create a new query client instance
15-
const queryClient = new QueryClient({
16-
defaultOptions: {
17-
mutations: {
18-
onError: (error) => {
19-
console.error('Mutation error:', error);
20-
},
21-
},
22-
queries: {
23-
retry: 1,
24-
staleTime: 1000 * 60, // 1 minute
25-
},
26-
},
27-
});
28-
2913
export const Route = createRootRoute({
3014
component: Root,
3115
beforeLoad: async ({ location }) => {
@@ -76,23 +60,22 @@ function Root() {
7660
)}
7761
>
7862
<ErrorBoundary>
79-
<QueryClientProvider client={queryClient}>
80-
<div className="flex mx-auto lg:flex-row lg:w-fit lg:gap-2">
81-
<Navbar />
82-
<div className="bg-white dark:bg-black text-gray-900 dark:text-gray-100 flex justify-center mx-auto">
83-
<ErrorBoundary>
84-
<div className={cn('flex flex-col gap-2', pathname !== '/' && 'max-w-[550px]')}>
85-
<Outlet key="app" />
86-
</div>
87-
</ErrorBoundary>
88-
</div>
63+
<div className="flex mx-auto lg:flex-row lg:w-fit lg:gap-2">
64+
<Navbar />
65+
<div className="bg-white dark:bg-black text-gray-900 dark:text-gray-100 flex justify-center mx-auto">
66+
<ErrorBoundary>
67+
<div className={cn('flex flex-col gap-2', pathname !== '/' && 'max-w-[550px]')}>
68+
<Outlet key="app" />
69+
</div>
70+
</ErrorBoundary>
8971
</div>
90-
{experiments.devMode && (
91-
<div className="fixed bottom-12 right-2">
92-
<ReactQueryDevtools buttonPosition="relative" />
93-
</div>
94-
)}
95-
</QueryClientProvider>
72+
</div>
73+
{experiments.devMode && (
74+
<div className="fixed bottom-12 right-2">
75+
<ReactQueryDevtools buttonPosition="relative" />
76+
</div>
77+
)}
78+
9679
{experiments.devMode && (
9780
<TanStackRouterDevtools
9881
toggleButtonProps={{

0 commit comments

Comments
 (0)