【发布时间】:2026-02-07 07:55:02
【问题描述】:
我有以下Login函数:
export function Login(username, password) {
return dispatch => {
dispatch(loginBegin());
axios({
method: 'post',
url: 'api/User/Login',
data: { username, password },
}).then(response => {
if (response.data !== null) {
console.log('success: Login is successful');
dispatch(loginSuccess(response.data));
}
}).catch(error => { dispatch(loginFailure(error.response.data.message)) });
}
}
我在Login组件中调用这个函数如下:
function FormSubmitHandle(values) {
setFormSubmitted(true);
props.login(values.username, values.password)
.then((login_succeeded) => {
console.log('YESSSS');
console.log(login_succeeded);
});
}
但是,.then() 部分不起作用。它不会打印任何内容。
任何想法为什么会发生这种情况?
【问题讨论】:
-
您的登录是一项功能。这不是api调用吗?那么如何将 .then() 用于函数呢?
-
@xtr
response.data不为空,我正确设置了状态。我想我可能需要做这个功能async?
标签: javascript reactjs promise redux-thunk