state完成所有网络请求后,1 次更新的正确方法是什么?
// idList === ["34563", "123423", "2359239"]
const [itemsList, setItemsList] = useState([]);
useEffect(() => {
const updatedItemsList = [];
idList.forEach((id) => {
const item = doSomeFetch(id);
updatedItemsList.push(item)
})
setItemsList(updatedItemsList)
}, [props.idList])
预期结果:
- 遍历数组
id - 为每个服务器向服务器发出请求
id - 通过它获取一个对象
id并将其添加到数组中 - 完成所有请求后,我们将结果数组放入状态
甚至可能更短一点