为什么 react 不会在 Redux 操作触发后设置状态?



我试图在redux触发后在组件中本地设置状态,但它只是不起作用,我在这里做错了什么?

<TableCell
onClick={() => {
if (dropDownLocation === "allLocations") {
overlayDisplay("open");
} else {
console.log(values.rescheduleDate);
getReservationsByDate(row.reservation_date); // Redux action
getStaffMember(row.staff_name); // Redux action
setValues((prevState) => {
return {
...prevState,
rescheduleDate: true, // always logged as false
};
});
}
}}
>CLICK</TableCell>

默认情况下,Redux的操作是同步调度的,所以这里可以使用async-await来执行异步操作。

<TableCell
onClick={async () => {
if (dropDownLocation === "allLocations") {
overlayDisplay("open");
} else {
console.log(values.rescheduleDate);
await getReservationsByDate(row.reservation_date); // Redux action
await getStaffMember(row.staff_name); // Redux action
await setValues((prevState) => {
return {
...prevState,
rescheduleDate: true, // always logged as false
};
});
}
}}
>CLICK</TableCell>

最新更新