浏览代码

错误画面3

zhangzl 2 月之前
父节点
当前提交
fd5055dd31
共有 1 个文件被更改,包括 37 次插入41 次删除
  1. 37 41
      new-react-admin-ui/src/App.tsx

+ 37 - 41
new-react-admin-ui/src/App.tsx

@@ -1,5 +1,5 @@
-import { BrowserRouter as Router, Routes, Route, Navigate } from 'react-router-dom';
 import { Admin, Resource, CustomRoutes } from 'react-admin';
+import { Route } from 'react-router-dom';
 import { ThemeProvider, createTheme } from '@mui/material/styles';
 import { ruoyiDataProvider } from '@/adapters/ruoyiDataProvider';
 import { ruoyiAuthProvider } from '@/adapters/ruoyiAuthProvider';
@@ -29,52 +29,48 @@ const theme = createTheme({
   },
 });
 
-// React Admin应用组件
-const ReactAdminApp = () => (
-  <Admin
-    dataProvider={ruoyiDataProvider}
-    authProvider={ruoyiAuthProvider}
-    loginPage={LoginPage}
-    dashboard={Dashboard}
-    layout={Layout}
-    theme={theme}
-    requireAuth
-  >
-    <Resource
-      name="system/users"
-      list={UserList}
-      edit={UserEdit}
-      create={UserCreate}
-    />
-    <Resource
-      name="system/roles"
-      list={RoleList}
-      edit={RoleEdit}
-      create={RoleCreate}
-    />
-    <Resource
-      name="system/menus"
-      list={MenuList}
-      edit={MenuEdit}
-      create={MenuCreate}
-    />
-    
-    {/* Dashboard通过Resource自动路由,无需CustomRoutes */}
-  </Admin>
+// 创建一个不包含Layout的简单布局组件用于错误页面
+const ErrorLayout = ({ children }: { children: React.ReactNode }) => (
+  <div>{children}</div>
 );
 
 export const App = () => {
   return (
     <ThemeProvider theme={theme}>
-      <Router>
-        <Routes>
-          {/* 错误页面 - 独立于React Admin */}
+      <Admin
+        dataProvider={ruoyiDataProvider}
+        authProvider={ruoyiAuthProvider}
+        loginPage={LoginPage}
+        dashboard={Dashboard}
+        layout={Layout}
+        theme={theme}
+        requireAuth
+      >
+        <Resource
+          name="system/users"
+          list={UserList}
+          edit={UserEdit}
+          create={UserCreate}
+        />
+        <Resource
+          name="system/roles"
+          list={RoleList}
+          edit={RoleEdit}
+          create={RoleCreate}
+        />
+        <Resource
+          name="system/menus"
+          list={MenuList}
+          edit={MenuEdit}
+          create={MenuCreate}
+        />
+        
+        <CustomRoutes noLayout>
           <Route path="/error" element={<ErrorPage />} />
-          
-          {/* 其他所有路由都交给React Admin处理 */}
-          <Route path="/*" element={<ReactAdminApp />} />
-        </Routes>
-      </Router>
+        </CustomRoutes>
+        
+        {/* Dashboard通过Resource自动路由,无需CustomRoutes */}
+      </Admin>
     </ThemeProvider>
   );
 };