我有一个 foreach 循环,它执行许多接收数据并呈现表格的异步函数。我想在所有异步之后调用第二个函数。foreach 循环中的调用已完成并呈现表。
是的你可以。将您称为 Promise 的每个操作都进行一遍。将所有这些承诺保存为一个数组,然后调用Promise.all
const promises:Promise<{}>[] = [];
myWhatever.forEach(
item => {
const promise = new Promise<{}>(
(resolve, reject) => {
// Do something which ends up with resolve getting called
// at some point
}
);
promises.push(promise);
}
);
Promise.all(promises)
.then(
() => {
// Perform your post render tasks here
}
);
您可以通过替换forEach
为map 来进一步简化
const promises = myWhatever.map(
item =>
new Promise<{}>(
(resolve, reject) => {
// Do something which ends up with resolve getting called
// at some point
}
)
);
Promise.all(promises)
.then(
() => {
// Perform your post render tasks here
}
);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句