shaogen1995 2 anos atrás
pai
commit
db3592682f

+ 1 - 1
src/components/NotFound/index.tsx

@@ -6,7 +6,7 @@ export default function NotFound() {
     <Result
       status="404"
       title="404"
-      subTitle="页面找不到,或者没有权限!"
+      subTitle="页面找不到!"
       extra={<Button onClick={()=>history.push('/')} type="primary">去首页</Button>}
     />
   );

+ 33 - 13
src/pages/Layout/index.tsx

@@ -12,10 +12,6 @@ import { Base64 } from "js-base64";
 import encodeStr from "@/utils/pass";
 import { passWordEditAPI } from "@/store/action/login";
 
-const Home = React.lazy(() => import("../Home"));
-const Object = React.lazy(() => import("../Object"));
-const Stores = React.lazy(() => import("../Stores"));
-const System = React.lazy(() => import("../System"));
 const NotFound = React.lazy(() => import("../../components/NotFound"));
 
 export default function Layout() {
@@ -25,7 +21,7 @@ export default function Layout() {
   useEffect(() => {
     const arr = location.pathname.split("/");
     let pathTemp = "/";
-    if (arr[1]) pathTemp = '/'+arr[1];
+    if (arr[1]) pathTemp = "/" + arr[1];
 
     setPath(pathTemp);
   }, [location]);
@@ -36,10 +32,30 @@ export default function Layout() {
 
   const tabList = useMemo(() => {
     return [
-      { id: 1, path: "/", name: "首页" },
-      { id: 2, path: "/object", name: "馆藏管理" },
-      { id: 3, path: "/stores", name: "库房管理" },
-      { id: 4, path: "/system", name: "系统管理" },
+      {
+        id: 1,
+        Com: React.lazy(() => import("../Home")),
+        path: "/",
+        name: "首页",
+      },
+      {
+        id: 2,
+        Com: React.lazy(() => import("../Object")),
+        path: "/object",
+        name: "馆藏管理",
+      },
+      {
+        id: 3,
+        Com: React.lazy(() => import("../Stores")),
+        path: "/stores",
+        name: "库房管理",
+      },
+      {
+        id: 4,
+        Com: React.lazy(() => import("../System")),
+        path: "/system",
+        name: "系统管理",
+      },
     ];
   }, []);
 
@@ -116,10 +132,14 @@ export default function Layout() {
       <div className="pageMain">
         <React.Suspense fallback={<SpinLoding />}>
           <Switch>
-            <AuthRoute exact path="/" component={Home} />
-            <AuthRoute path="/object" component={Object} />
-            <AuthRoute path="/stores" component={Stores} />
-            <AuthRoute path="/system" component={System} />
+            {tabList.map((v, i) => (
+              <AuthRoute
+                key={v.id}
+                exact={i === 0 ? true : false}
+                path={v.path}
+                component={v.Com}
+              />
+            ))}
             <Route path="*" component={NotFound} />
           </Switch>
         </React.Suspense>

+ 50 - 22
src/pages/Object/index.tsx

@@ -1,27 +1,53 @@
 import styles from "./index.module.scss";
 import LeftBar from "@/components/LeftBar";
-import React from "react";
+import React, { useMemo } from "react";
 import SpinLoding from "@/components/SpinLoding";
 import { Route, Switch } from "react-router-dom";
 import AuthRoute from "@/components/AuthRoute";
 import NotFound from "@/components/NotFound";
-const Object1 = React.lazy(() => import("../Object1"));
-const Object2 = React.lazy(() => import("../Object2"));
-const Object3 = React.lazy(() => import("../Object3"));
-const Object4 = React.lazy(() => import("../Object4"));
-const Object5 = React.lazy(() => import("../Object5"));
-const Object6 = React.lazy(() => import("../Object6"));
-
-const data = [
-  { id: 1, name: "藏品登记", path: "/object" },
-  { id: 2, name: "入库管理", path: "/object/2" },
-  { id: 3, name: "出库管理", path: "/object/3" },
-  { id: 4, name: "藏品总账", path: "/object/4" },
-  { id: 5, name: "藏品盘核", path: "/object/5" },
-  { id: 6, name: "藏品注销", path: "/object/6" },
-];
 
 export default function Object() {
+  const data = useMemo(() => {
+    return [
+      {
+        id: 1,
+        name: "藏品登记",
+        Com: React.lazy(() => import("../ObjectSon/Object1")),
+        path: "/object",
+      },
+      {
+        id: 2,
+        name: "入库管理",
+        Com: React.lazy(() => import("../ObjectSon/Object2")),
+        path: "/object/2",
+      },
+      {
+        id: 3,
+        name: "出库管理",
+        Com: React.lazy(() => import("../ObjectSon/Object3")),
+        path: "/object/3",
+      },
+      {
+        id: 4,
+        name: "藏品总账",
+        Com: React.lazy(() => import("../ObjectSon/Object4")),
+        path: "/object/4",
+      },
+      {
+        id: 5,
+        name: "藏品盘核",
+        Com: React.lazy(() => import("../ObjectSon/Object5")),
+        path: "/object/5",
+      },
+      {
+        id: 6,
+        name: "藏品注销",
+        Com: React.lazy(() => import("../ObjectSon/Object6")),
+        path: "/object/6",
+      },
+    ];
+  }, []);
+
   return (
     <div className={styles.Object}>
       <div className="leftBar">
@@ -31,12 +57,14 @@ export default function Object() {
       <div className="rightMain">
         <React.Suspense fallback={<SpinLoding />}>
           <Switch>
-            <AuthRoute path="/object/2" component={Object2} />
-            <AuthRoute path="/object/3" component={Object3} />
-            <AuthRoute path="/object/4" component={Object4} />
-            <AuthRoute path="/object/5" component={Object5} />
-            <AuthRoute path="/object/6" component={Object6} />
-            <AuthRoute exact path="/object" component={Object1} />
+            {data.map((v, i) => (
+              <AuthRoute
+                exact={i === 0 ? true : false}
+                key={v.id}
+                path={v.path}
+                component={v.Com}
+              />
+            ))}
             <Route path="*" component={NotFound} />
           </Switch>
         </React.Suspense>

src/pages/Object1/index.module.scss → src/pages/ObjectSon/Object1/index.module.scss


src/pages/Object1/index.tsx → src/pages/ObjectSon/Object1/index.tsx


src/pages/Object2/index.module.scss → src/pages/ObjectSon/Object2/index.module.scss


src/pages/Object2/index.tsx → src/pages/ObjectSon/Object2/index.tsx


src/pages/Object3/index.module.scss → src/pages/ObjectSon/Object3/index.module.scss


src/pages/Object3/index.tsx → src/pages/ObjectSon/Object3/index.tsx


src/pages/Object4/index.module.scss → src/pages/ObjectSon/Object4/index.module.scss


src/pages/Object4/index.tsx → src/pages/ObjectSon/Object4/index.tsx


src/pages/Object5/index.module.scss → src/pages/ObjectSon/Object5/index.module.scss


src/pages/Object5/index.tsx → src/pages/ObjectSon/Object5/index.tsx


src/pages/Object6/index.module.scss → src/pages/ObjectSon/Object6/index.module.scss


src/pages/Object6/index.tsx → src/pages/ObjectSon/Object6/index.tsx