嵌套承诺
我使用带角度的微风,我的语言是Typescript
.then((account: IAccount) => {
for (let i = account.workspaces.length - 1; i >= 0; i--) {
for (let j = account.workspaces[i].apps.length - 1; j >= 0; j--) {
appDataService.getApp(account.workspaces[i].apps[j].id)
**.then((app) => {
**apps.push(app);**
});**
account.workspaces[i].apps.splice(j, 1);
}
}
return account;
})
.then((account) => {
for (let i = apps.length - 1; i >= 0; i--) {
appDataService.deleteApp(apps[i]);
}
..... // more awesome code here
return account;
})
我有一个嵌套的承诺
appDataService.getApp(account.workspaces[i].apps[j].id)
.then((app) => {
apps.push(app);
});
但是当我进入下一个.then
时,数组应用的长度为0.
我检查过并仔细检查过。它不是getApp
函数的问题。 :)
你能解释一下如何等待那个嵌套的承诺吗?