Browse Source

路由修改测试

zhouna 3 năm trước cách đây
mục cha
commit
0e9e176a37
3 tập tin đã thay đổi với 39 bổ sung16 xóa
  1. 14 4
      src/components/AuthIndex/index.js
  2. 19 0
      src/utils/RouteWithSubRoutes.js
  3. 6 12
      src/utils/routes.js

+ 14 - 4
src/components/AuthIndex/index.js

@@ -4,16 +4,18 @@ import {
     Route,
     Redirect,
 } from "react-router-dom";
-import NullPage from '@components/NullPage';
+/*import NullPage from '@components/NullPage';
 import Login from '@components/Login';
-import PageLayout from '@components/PageLayout'
+import PageLayout from '@components/PageLayout'*/
+import RouteWithSubRoutes from '@utils/RouteWithSubRoutes'
+import routes from '@utils/routes';
 
 export default function AuthIndex() {
     const user = localStorage.getItem("token");
     return (
         <Router>
             <Switch>
-                <Route path="/404">
+                {/*<Route path="/404">
                     <NullPage></NullPage>
                 </Route>
                 <Route path="/manage">
@@ -25,7 +27,15 @@ export default function AuthIndex() {
                 </Route>
                 <Route path="/">
                     <Login></Login>
-                </Route>
+                </Route>*/}
+                <Route
+                    exact
+                    path="/"
+                    render={() => <Redirect to="/login" />}
+                />
+                {routes.map(route => (
+                    <RouteWithSubRoutes key={route.path} {...route} />
+                ))}
             </Switch>
         </Router>
     )

+ 19 - 0
src/utils/RouteWithSubRoutes.js

@@ -0,0 +1,19 @@
+import React, { Suspense } from 'react'
+import { Route } from 'react-router-dom'
+
+// 路由组建配置
+export default route => {
+    const attrs = {
+        path: route.path,
+        exact: route.exact,
+        render: props => {
+            if (route.name) document.title = route.name
+            return <route.component {...props} routes={route.routes} />
+        }
+    }
+    return (
+        <Suspense fallback={<div />}>
+            <Route {...attrs} />
+        </Suspense>
+    )
+}

+ 6 - 12
src/utils/routes.js

@@ -1,22 +1,16 @@
 import Login from '@components/Login';
-import OrgManager from '@components/OrgManager';
-import RoleManager from '@components/RoleManager';
-import UserManager from '@components/UserManager';
+import PageLayout from '@components/PageLayout';
+/*import RoleManager from '@components/RoleManager';
+import UserManager from '@components/UserManager';*/
 
 const routes = [
     {
         path:'/login',
         component:Login
     },{
-        path:'/org',
-        component:OrgManager
-    },{
-        path:'/role',
-        component:RoleManager
-    },{
-        path:'/user',
-        component:UserManager
-    },
+        path:'/manage',
+        component:PageLayout
+    }
 ];
 
 export default routes;