【发布时间】:2021-07-10 20:29:00
【问题描述】:
我一个接一个地分派两个动作,其中第二个分派使用第一个分派的减速器,但我变得不确定,因为第二个动作在第一个动作被分派之前被分派。
这是我的代码:
const auth = useSelector((state) => state.auth);
const student = useSelector((state) => state.student);
useEffect(() => {
const id = auth.user.user;
dispatch(getStudent(id));
}, [auth.authenticate]);
if (auth.authenticate) {
if (auth.user.user_type.is_student == true) {
if (student.detail && student.detail.length > 0) {
return <Redirect to={"/student/classes"}></Redirect>;
} else {
return <Redirect to={"/student/profile"}></Redirect>;
}
} else {
return <Redirect to={"/faculty/classes"}></Redirect>;
}
}
const userLogin = (e) => {
e.preventDefault();
const user = {
username,
password,
};
dispatch(login(user));
};
我试图根据是否填充 student.detail 将其重定向到页面,但它首先重定向并稍后执行 useEffect 函数。
【问题讨论】:
标签: reactjs redux react-redux dispatch