【发布时间】:2020-04-09 18:35:46
【问题描述】:
我有一个存储在状态中的项目列表。提交表单后,我将另一个项目添加到列表中,然后将其保存为新状态。这个新添加的项目的状态为“待定”。同时我发送一个发布请求,如果发布请求失败,我想将该特定项目状态更新为“错误”。问题是,请求失败时状态并未更新,因此我试图更新未设置的状态。 我正在使用反应钩子,所以一种可能性是仅在状态更新后调用请求:
useEffect = (()=>{
function getRequest(URL, id, freq) {
request happens here
}
}),[state])
以前,在将 getRequest 函数放入 useEffect 之前,它被子组件中的另一个函数调用。
我的问题包括几个部分: 1) 如何将参数 URL、id、freq 获取到 useEffect 函数中? 2) 我不想在第一次渲染时运行 getRequest 函数,那么我该如何否定呢? 3)我在这里做事的一般模式是好的(我相信它不应该这么困难)。
【问题讨论】:
-
这不是您使用
useState函数的方式。你的意思是useEffect? -
是的,谢谢,刚刚编辑
标签: reactjs asynchronous use-effect use-state