javascript - Wie implementiert man mehrere in einer Schleife verschachtelte Versprechen?
漂亮男人
漂亮男人 2017-06-28 09:29:10
0
1
1325

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);
});
漂亮男人
漂亮男人

Antworte allen(1)
代言

Promise.all([promises])promises 已经是数组了

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!