reactjs - 登录错误:错误:不可草拟值上的大小写缩减程序不得返回未定义
问题描述
在我的 userSlice.js 文件中,我有以下代码。当我调试 loginStart 减速器时,它会跳转到 loginError
编辑:有时有效,有时无效,我不知道为什么
import { createSlice } from '@reduxjs/toolkit'
import Cookies from 'js-cookie';
const userSlice = createSlice({
name: 'user',
initialState: {
userInfo: null,
loginPending: false,
loginError: false,
isLoggedIn: false,
token: '',
},
reducers: {
loginStart: (state) => {
state.loginPending = true;
},
loginSuccess: (state, action) => {
state.loginPending = false;
state.userInfo = action.payload.dashboardUser;
state.token = action.payload.token;
state.isLoggedIn = true;
},
loginError: (state) => {
state.loginError = true;
state.loginPending = false;
},
logout: async (state) => {
state.token = '';
state.isLoggedIn = false;
state.userInfo = null;
}
},
});
export const { loginStart, loginSuccess, loginError, logout } = userSlice.actions;
export default userSlice.reducer;
这是登录功能:
export const login = async (email, password, dispatch) => {
try {
dispatch(loginStart());
const res = await axios.post(`${process.env.REACT_APP_SERVER}/api/auth/login`, {
email: email,
password: password,
});
dispatch(loginSuccess(res.data));
} catch (err) {
dispatch(loginError());
}
}
并且登录 api 调用正在工作。所以问题不存在。感谢大家的帮助
解决方案
我看到你错误的网址:process.env.REACT_APP_SERVER}/api//auth/login
。所以axios
不能发布数据,它会跳转到loginError
.
更新您的网址:
process.env.REACT_APP_SERVER}/api/auth/login
推荐阅读
- c - C枚举调试
- node.js - 从 React 应用程序调用时 Express 会话不显示会话变量,但从浏览器调用时会显示会话变量
- excel - 如何对日期数据类型进行排序?
- java - 原生 Android 中类似 Figma 的内阴影效果
- rust - 什么特征阻止参数包含指向堆分配数据的指针?
- angular - 指令和组件中本地提供者的优先级
- javascript - 为条纹中的每个产品价格添加单独的图像
- swift - 如何通过带有 FetchedResults 和 CoreData 的导航链接传递数据?
- rust - 为什么我的测试会改变字节数组的长度?
- python - 在 pandas DataFrame 中选择至少包含一个 True 值的列的最佳解决方案