【发布时间】:2022-01-02 08:00:44
【问题描述】:
在发送登录操作后,我尝试使用 redux 引入身份验证反应原生应用程序。登录屏幕中的代码:
const dispatch = useDispatch();
const auth = useSelector(state => state.authentication);
const onSubmit = (data: {email: string; password: string}) => {
dispatch(loginUser(data));
auth.isAuth && navigation.navigate('Home');
};
export const loginUser = data => async dispatch => {
try {
const res = await axios({
method: 'post',
url: `${API_URl}/auth/login`,
data,
});
dispatch({type: LOGIN_SUCCESS, payload: res.data});
} catch (error) {
dispatch({type: GET_ERRORS, payload: error.response.data});
dispatch({type: LOGIN_FAILED, payload: error.response.data});
}
};
case LOGIN_SUCCESS:
case REGISTER_SUCCESS:
return {
...state,
user: payload.user,
isAuth: true,
message: null,
};
我想导航到另一个屏幕“主页”,但这不是在发送登录操作后第一次完成,尽管我已验证状态已更改: enter image description the console after press login button
【问题讨论】:
标签: react-native authentication redux react-redux react-navigation-v5