[英]React state not updating after await - useState
我正在嘗試更新多個文件上傳狀態,但在等待未更新到任何 state 之后
const uploadFiles = async () => {
let tradeFileListNew = [...tradeFileList];
for (const fileList of tradeFileListNew) {
if (fileList.status == "not-yet") {
let index = tradeFileListNew.indexOf(fileList);
tradeFileListNew[index].status = "started";
setTradeFilesToUpload(tradeFileListNew);
const formData = new FormData();
formData.append("file", fileList.file);
formData.append("service_type", "attachments");
let res = await api.uploadCompanyFile(formData);
tradeFileListNew[index].status = "completed";
setTradeFilesToUpload(tradeFileListNew);
}
}
};
請注意,您正在調用setTradeFilesToUpload(tradeFileListNew);
多次,並試圖在兩者之間改變tradeFileListNew
。 React 將忽略對setTradeFilesToUpload
的第二次調用,因為它傳遞了相同的引用,所以它被假定為無操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.