Javascript 异步函数具有旧状态React Redux
我正在做一个React项目,用户可以上传和删除项目中的照片。上传新图像后,只有选择了相应的项目,用户才能看到它。这个解决方案很容易检查Javascript 异步函数具有旧状态React Redux,javascript,reactjs,async-await,react-redux,Javascript,Reactjs,Async Await,React Redux,我正在做一个React项目,用户可以上传和删除项目中的照片。上传新图像后,只有选择了相应的项目,用户才能看到它。这个解决方案很容易检查 if (selectedProject.projectID=== imageMetadata.projectID) 在哪里 selectedProject.projectID:当前所选项目的Id(提交自 Redux商店) imageMetadata.projectID:上载图像所属项目的Id 所有这些都是在一个异步函数中完成的,我们面临的问题是,即使在s
if
(selectedProject.projectID=== imageMetadata.projectID)
在哪里
- selectedProject.projectID:当前所选项目的Id(提交自 Redux商店)
- imageMetadata.projectID:上载图像所属项目的Id
let projectId = selectedProject.projectID;
const responses = await Promise.all(
filesToUpload.map( async (file) => {
let res = await imageStoreApiHandler.uploadPhoto(file, projectId);
notifyUploadProgress(count++, total, notifcationKey);
if (res.status === 200) {
let imageMetadata: any = res.data[0];
if (selectedProject.projectID === imageMetadata.projectID) {
addImage(imageMetadata);
}
}
return res;
}));
uploadhandler保持缓存第一个函数可能是一个闭包问题
可以编写一个函数,该函数将根据当前项目id的参数返回一个promise all数组。您是否在操作中执行此操作?在onClick事件中执行此操作,您所说的操作是什么意思?redux操作:)。可能需要更多的代码来解决上面编辑和粘贴的完整函数的问题。是什么导致了这个问题?你能就如何解决这个问题提供一些指导吗?