【发布时间】:2019-01-17 16:53:01
【问题描述】:
如何让动态数量的 Promise 按顺序解析?例如,在被调用之前等待一个完成。
本质上我希望它们被同步调用,但我不能在我的环境中使用 await/async
这是我迄今为止尝试过的,但它只适用于第一个和最后一个被调用的对象:
class MyClass{
constructor(t){
this.time = t
}
load(){
return new Promise(resolve => {
setTimeout( () => {
console.log(this.time);
resolve(this.time);
}, 1000/this.time)
})
}
}
let pChain;
for(i=1; i<5; i++){
if(!pChain){
pChain = new MyClass(i).load();
}else{
pChain = pChain.then( t => new MyClass(i).load())
}
}
pChain.then();
【问题讨论】:
标签: javascript ecmascript-6 es6-promise