张涛 1 year ago
parent
commit
f4c0c013bb

+ 2
- 2
src/layouts/AuthLayout/components/Header/User.jsx View File

113
   return (
113
   return (
114
     <Dropdown menu={{ items, onClick }}>
114
     <Dropdown menu={{ items, onClick }}>
115
       <div className="user-info">
115
       <div className="user-info">
116
-        <Avatar size={24} src={user.avatar || <DefaultAvatar />} />
117
-        <span className="font">{user.name}</span>
116
+        <Avatar size={24} src={user.account || <DefaultAvatar />} />
117
+        <span className="font">{user.userName}</span>
118
         <ChangePassword user={user} ref={passRef} />
118
         <ChangePassword user={user} ref={passRef} />
119
       </div>
119
       </div>
120
     </Dropdown>
120
     </Dropdown>

+ 1
- 11
src/layouts/AuthLayout/index.jsx View File

1
-import React, { useEffect } from "react";
1
+import React from "react";
2
 import { Spin } from "antd";
2
 import { Spin } from "antd";
3
 import HtmlTitle from "./components/HtmlTitle";
3
 import HtmlTitle from "./components/HtmlTitle";
4
 // import Main from './Main';
4
 // import Main from './Main';
5
 import withLogin from "./withLogin";
5
 import withLogin from "./withLogin";
6
-import { getToken } from "@/utils/token";
7
-import { useNavigate } from "react-router-dom";
8
 
6
 
9
 const Spinner = () => (
7
 const Spinner = () => (
10
   <div
8
   <div
20
 );
18
 );
21
 
19
 
22
 export default (props) => {
20
 export default (props) => {
23
-  const navigator = useNavigate();
24
-
25
-  const token = getToken();
26
-  useEffect(() => {
27
-    if (!token) {
28
-      navigator("login");
29
-    }
30
-  }, [token]);
31
   const RequireLogin = React.lazy(() => {
21
   const RequireLogin = React.lazy(() => {
32
     return withLogin(import("./Main"));
22
     return withLogin(import("./Main"));
33
   });
23
   });

+ 6
- 0
src/services/login.js View File

23
  *查询当前登录状态
23
  *查询当前登录状态
24
  */
24
  */
25
 export const isLogin = (params) => request("/api/isLogin", { params })
25
 export const isLogin = (params) => request("/api/isLogin", { params })
26
+
27
+
28
+/**
29
+ * 获取当前用户信息
30
+ */
31
+export const currentUser = (params) => request("/api/current", { params })

+ 17
- 27
src/store/models/user.js View File

2
 import { defaultRoutes, authRoutes, mergeAuthRoutes } from "@/routes/routes";
2
 import { defaultRoutes, authRoutes, mergeAuthRoutes } from "@/routes/routes";
3
 import { getMenuItems } from "@/routes/menus";
3
 import { getMenuItems } from "@/routes/menus";
4
 // import { getAuthedRoutes } from "@/routes/permissions";
4
 // import { getAuthedRoutes } from "@/routes/permissions";
5
-import { isLogin } from "@/services/login";
5
+import { currentUser } from "@/services/login";
6
 
6
 
7
-export default function useUser () {
8
-  // const [user, setUser] = useState();
7
+export default function useUser() {
8
+  const [user, setUser] = useState({});
9
   const menusRef = useRef();
9
   const menusRef = useRef();
10
   const routesRef = useRef();
10
   const routesRef = useRef();
11
 
11
 
12
-  const getCurrentUser = () =>
13
-    new Promise((resolve, reject) => {
14
-      // isLogin()
15
-      //   .then((res) => {
16
-      // const { user } = res;
17
-      // const permissions = res;
18
-
19
-      // authRoutes 是所有待验证授权的路由
20
-      // authedRoutes 是已经被授权的路由
21
-      // const authedRoutes = authRoutes;
22
-
23
-      menusRef.current = getMenuItems(authRoutes);
24
-      routesRef.current = mergeAuthRoutes(defaultRoutes);
25
-      // console.log('menusRef.current', menusRef.current)
26
-
27
-      // setUser(user);
28
-      resolve();
29
-      // })
30
-
31
-    }).catch((e) => {
32
-      console.log(e)
33
-    });
12
+  const getCurrentUser = async () => 
13
+  new Promise((resolve, reject) => {
14
+    currentUser()
15
+      .then((res) => {
16
+        setUser(res);
17
+        menusRef.current = getMenuItems(authRoutes);
18
+        routesRef.current = mergeAuthRoutes(defaultRoutes);
19
+        // console.log('menusRef.current', menusRef.current)
20
+        resolve(res);
21
+      })
22
+      .catch(reject);
23
+  });
34
 
24
 
35
   return {
25
   return {
36
-    // user,
37
-    // setUser,
26
+    user,
27
+    setUser,
38
     getCurrentUser,
28
     getCurrentUser,
39
     menus: menusRef.current || [],
29
     menus: menusRef.current || [],
40
     routes: routesRef.current || [],
30
     routes: routesRef.current || [],