循环嵌套多个promise应该如何实现?

大致情况如下:

首先从一个请求中获得一个数组(regions),这一步先不管,前头已经处理了;
遍历这个数组获得所需信息。从而可以发送N个异步请求。
在所有这些异步请求全部完成之后处理返回的数据。

我在这里遇到的问题是每次貌似都是直接进到外层的then方法,不应该是内层的所有then都resolve之后再进到外层的then吗?求教应该如何改写?

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);

});


Smart猫小萌
浏览 1145回答 1
1回答

喵喵时光机

Promise.all([promises]),promises 已经是数组了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript