diff --git a/src/renderer/src/Router.tsx b/src/renderer/src/Router.tsx index edaebfa144..61a376285f 100644 --- a/src/renderer/src/Router.tsx +++ b/src/renderer/src/Router.tsx @@ -1,6 +1,7 @@ import '@renderer/databases' -import { FC, useMemo } from 'react' +import { Spinner } from '@heroui/react' +import { FC, lazy, Suspense, useMemo } from 'react' import { HashRouter, Route, Routes } from 'react-router-dom' import Sidebar from './components/app/Sidebar' @@ -8,18 +9,25 @@ import { ErrorBoundary } from './components/ErrorBoundary' import TabsContainer from './components/Tab/TabContainer' import NavigationHandler from './handler/NavigationHandler' import { useNavbarPosition } from './hooks/useSettings' -import CodeToolsPage from './pages/code/CodeToolsPage' -import FilesPage from './pages/files/FilesPage' -import HomePage from './pages/home/HomePage' -import KnowledgePage from './pages/knowledge/KnowledgePage' -import LaunchpadPage from './pages/launchpad/LaunchpadPage' -import MinAppPage from './pages/minapps/MinAppPage' -import MinAppsPage from './pages/minapps/MinAppsPage' -import NotesPage from './pages/notes/NotesPage' -import PaintingsRoutePage from './pages/paintings/PaintingsRoutePage' -import SettingsPage from './pages/settings/SettingsPage' -import AssistantPresetsPage from './pages/store/assistants/presets/AssistantPresetsPage' -import TranslatePage from './pages/translate/TranslatePage' + +const HomePage = lazy(() => import('./pages/home/HomePage')) +const AssistantPresetsPage = lazy(() => import('./pages/store/assistants/presets/AssistantPresetsPage')) +const PaintingsRoutePage = lazy(() => import('./pages/paintings/PaintingsRoutePage')) +const TranslatePage = lazy(() => import('./pages/translate/TranslatePage')) +const FilesPage = lazy(() => import('./pages/files/FilesPage')) +const NotesPage = lazy(() => import('./pages/notes/NotesPage')) +const KnowledgePage = lazy(() => import('./pages/knowledge/KnowledgePage')) +const MinAppPage = lazy(() => import('./pages/minapps/MinAppPage')) +const MinAppsPage = lazy(() => import('./pages/minapps/MinAppsPage')) +const CodeToolsPage = lazy(() => import('./pages/code/CodeToolsPage')) +const SettingsPage = lazy(() => import('./pages/settings/SettingsPage')) +const LaunchpadPage = lazy(() => import('./pages/launchpad/LaunchpadPage')) + +const RouterFallback: FC = () => ( +
+ +
+) const Router: FC = () => { const { navbarPosition } = useNavbarPosition() @@ -27,20 +35,22 @@ const Router: FC = () => { const routes = useMemo(() => { return ( - - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - + }> + + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + + ) }, [])