import React from 'react'; import { BrowserRouter as Router, Route, Routes, Navigate } from 'react-router-dom'; import { AuthProvider } from './contexts/AuthContext'; import { ToastProvider } from './contexts/ToastContext'; import { ThemeProvider } from './contexts/ThemeContext'; import MainLayout from './layouts/MainLayout'; import ProtectedRoute from './components/ProtectedRoute'; import LoginPage from './pages/LoginPage'; import DashboardPage from './pages/Dashboard'; import ServersPage from './pages/ServersPage'; import GroupsPage from './pages/GroupsPage'; import SettingsPage from './pages/SettingsPage'; import MarketPage from './pages/MarketPage'; import LogsPage from './pages/LogsPage'; import { getBasePath } from './utils/runtime'; function App() { const basename = getBasePath(); return ( {/* 公共路由 */} } /> {/* 受保护的路由,使用 MainLayout 作为布局容器 */} }> }> } /> } /> } /> } /> } /> } /> } /> {/* 未匹配的路由重定向到首页 */} } /> ); } export default App;