Heim > Fragen und Antworten > Hauptteil
Die allgemeine Situation ist wie folgt:
Erhalten Sie zunächst ein Array (Regionen) aus einer Anfrage. Ignorieren Sie diesen Schritt. Er wurde bereits verarbeitet.
Durchlaufen Sie dieses Array, um die erforderlichen Informationen zu erhalten. Dadurch können N asynchrone Anfragen gesendet werden.
Verarbeiten Sie die zurückgegebenen Daten, nachdem alle diese asynchronen Anforderungen abgeschlossen sind.
Das Problem, auf das ich hier gestoßen bin, ist, dass jedes Mal, wenn es scheint, als würde es direkt zur äußeren Dann-Methode übergehen, nicht alle inneren Dann-Werte aufgelöst werden sollten, bevor die äußere Dann-Methode eingegeben wird? Wie soll ich meine Frage umschreiben?
var promises = [];
promises = regions.map(function (region) {
return new Promise(function(resolve) {
Promise.all([asyncRequest1(region), asyncRequest2(region), asyncRequest3(region), asyncRequest4(region)])
.then(function (reses) {
resolve(reses);
});
});
});
Promise.all([promises]).then(function(results) {
handle(results);
});