我有这 3 个需要按顺序运行的函数。然而,由于first function其中有一个循环,因此它们2nd and 3rd functions在第一个函数的数据可用之前完成。我如何重构它以保证每个任务在下一个任务开始之前按顺序完成?过去的使用.then已经给了我我所需要的。但这一次它没有按正确的顺序完成。
mainFunction() {
fetch(API_URL + `/dataToGet`)
.then((res) => {
if (!res.ok) {
throw new Error();
}
return res.json();
})
.then((result) => {
this.setState({data: result}, () => this.1stFunction());
console.log(result);
})
.catch((error) => {
console.log(error);
})
.then(this.2ndFunction())
.catch((error) => {
console.log(error);
})
.then(this.3rdFunction());
}
firstFunction(){
for (let i = 0; i < data.length; i++){
for (let j = 0; j < 8; j++){
//...grabbing data and saving to variables to be used in next steps...
}
}
}
secondFunction(){
... wait until firstFunction is completed and then do something with data...
}
thridFunction(){
... wait until secondFunction is complete and then do something else with that data...
}
慕斯王
温温酱
吃鸡游戏
潇潇雨雨
慕斯709654
相关分类