支持联测
Change-Id: I6a18516906a6682bb956d23139a0467eababe113
diff --git a/scripts/webpack.dev.js b/scripts/webpack.dev.js
index eeb400a..02ab5b6 100644
--- a/scripts/webpack.dev.js
+++ b/scripts/webpack.dev.js
@@ -7,7 +7,7 @@
devServer: {
historyApiFallback: true,
open: true, // 编译完自动打开浏览器
- port: 8080,
+ port: 8081,
},
plugins: [
new webpack.DefinePlugin({
diff --git a/src/components/selfStatus/selfStatus.tsx b/src/components/selfStatus/selfStatus.tsx
index 61d3f4e..c7ea79d 100644
--- a/src/components/selfStatus/selfStatus.tsx
+++ b/src/components/selfStatus/selfStatus.tsx
@@ -1,4 +1,4 @@
-import React, { useEffect } from "react";
+import React, { useEffect, useRef } from "react";
import { useAppSelector } from "../../hooks/store";
import style from "./style.module.css"
import { useApi } from "@/hooks/request";
@@ -24,17 +24,13 @@
const avatar = useAppSelector(state => state.user.avatar);
const dispatch = useAppDispatch();
const { data, refresh } = useApi(() => request.get(getUserInfo), false);
+ const dataRef = useRef(data);
useEffect(() => {
- if (avatar.length === 0) {
- refresh(); // 触发 API 请求
- }
- }, [avatar, refresh]);
-
- useEffect(() => {
+ refresh();
if (data) {
dispatch({ type: "user/getUserInfo", payload: data });
}
- }, [data, dispatch]);
+ }, [dataRef, dispatch]);
function handleAvatarClick(){
nav('/homepage')
diff --git a/src/store/userReducer.ts b/src/store/userReducer.ts
index b677263..ab065b7 100644
--- a/src/store/userReducer.ts
+++ b/src/store/userReducer.ts
@@ -29,6 +29,7 @@
initialState,
reducers: {
login: (state, action) => {
+ console.log(action.payload)
localStorage.setItem('token', action.payload.token);
state.isLogin = true;
},
diff --git a/src/utils/axios.ts b/src/utils/axios.ts
index 3c9c122..bb44c82 100644
--- a/src/utils/axios.ts
+++ b/src/utils/axios.ts
@@ -30,13 +30,14 @@
(response) => {
// 统一处理响应数据格式
if (response.status === 200) {
- return response.data
+ return response.data.data
}
return Promise.reject(response.data)
},
(error) => {
if(error.status===401){
- // window.location.href = '/login';
+ localStorage.removeItem('token');
+ // window.location.href = '/login';
}
// 统一错误处理
console.error('API Error:', error.response?.status, error.message)