reactjs - Reactjs promise.all 调用顺序
问题描述
我正在尝试获取studentDataPromise
之前的内容,fetchLoansPromise
因为它取决于数据studentDataPromise
返回。
这是我当前的代码:
Promise.all([studentDataPromise, fetchclassesPromise, fetchLoansPromise])
.then(() => {
toggleIsReady();
})
.catch(error => {
throw new Error(error);
});
这是当前的事件顺序:
toggleIsReady
最初设置为 false,但现在为 true。fetchLoansPromise
- 无法获取它没有studentDataPromise
获取studentDataPromise
- 正确获取它toggleIsReady
- 现在设置为假fetchclassesPromise
- 正确获取它
有什么建议么?
解决方案
这就是我解决它的方法,现在'fetchStudentData'在'fetchLoansPromise'之前解决。
let studentDataPromise = null;
let fetchClassesPromise = null;
let fetchLoansPromise = null;
useEffect(() => {
studentDataPromise = fetchStudentData();
}, []);
useEffect(() => {
fetchClassesPromise = fetchClasses();
}, []);
useEffect(() => {
fetchLoansPromise = resolveStudentDataPromise();
}, []);
async function resolveStudentDataPromise() {
await Promise.all([studentDataPromise]);
fetchLoans();
}
Promise.all([studentDataPromise, fetchClassesPromise, fetchLoansPromise])
.then(() => {
toggleIsReady();
})
.catch(error => {
throw new Error(error);
});
谢谢大家
推荐阅读
- php - 集合对象中没有元值
- r - 如何知道哪个数据对象正在R中的哪个其他对象中使用
- python - Python处理文件路径中的\\
- java - 无法根据 recyclerAdapter (Viewpager2) 中的 sharedpreference 更改可见性
- c++ - 加入线程的按钮导致 win32/winAPI 应用程序冻结
- google-sheets - 如何将特定单词/短语的特定数据提取到 Google 表格中的单个单元格中
- r - 如何使 textOutput 更快?
- reactjs - 如何在三元渲染中从一个屏幕导航到另一个屏幕
- tensorflow - 如何将keras输入序列映射到多标签向量
- php - 代码无法区分php中的完美和非完美数字