[英]react usestate setvalue before async function
第一次尝试反应上下文 api。 这是我使用上下文 api 的反应代码
const [valChanged, setValChanged] = useState(false);
async function modalSave() {
await setValChanged(true);// STEP 1
await onEventSave();// This involves saving values to backend (async) STEP 2
}
onEventSave() 异步操作依赖于上一步的 valChanged 值,因此必须在调用 onEventSave 之前将其设置为 true。 (在调用 STEP 2 之前,必须完成步骤 1 并将其值设置为 true)
这里有什么遗漏吗?
如果你使用钩子,没有setState
回调 function,所以你可以用useEffect
,像这样:
useEffect(() => {
onEventSave();
},[valChanged]);
每当更改valChanged
时,都会调用上述 function
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.