refactor: use react router

This commit is contained in:
ReaJason
2025-04-05 12:32:57 +08:00
parent ab564de4d7
commit 647dd43228
12 changed files with 151 additions and 212 deletions
+5 -19
View File
@@ -1,37 +1,23 @@
import { RouterProvider, createRouter } from "@tanstack/react-router";
import ReactDOM from "react-dom/client";
import { routeTree } from "./routeTree.gen";
import "./index.css";
import { TailwindIndicator } from "@/components/tailwind-indicator.tsx";
import { env } from "@/config.ts";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import { I18nextProvider } from "react-i18next";
import i18n from "./i18n/i18n";
const queryClient = new QueryClient();
const router = createRouter({
routeTree,
basepath: env.BASE_PATH,
defaultPreload: "intent",
});
declare module "@tanstack/react-router" {
interface Register {
router: typeof router;
}
}
import { RouterProvider } from "react-router-dom";
import { router } from "./router";
import { QueryProvider } from "./providers/query-client-provider";
const rootElement = document.getElementById("app") as HTMLElement;
if (!rootElement.innerHTML) {
const root = ReactDOM.createRoot(rootElement);
root.render(
<QueryClientProvider client={queryClient}>
<QueryProvider>
<I18nextProvider i18n={i18n}>
<RouterProvider router={router} />
{env.MODE !== "production" && <TailwindIndicator />}
</I18nextProvider>
</QueryClientProvider>,
</QueryProvider>
);
}