promise.all()的使用

Promise.all()方法用于将多个 Promise 实例,包装成一个新的 Promise 实例。
Promise.all()等所有的Promise执行完毕后,按照放在all中的先后顺序将resolve()返回的数据放在Promise.all的resolve中
示例:

//方法
 promiseone(){
      return new Promise((r,j)=>{
        setTimeout( ()=>{
          console.log(111);
          r(11)
        },3000)
      })
    },
    promisetwo(){
      return new Promise((r,j)=>{
        setTimeout(()=>{
          console.log(22);
          r(22)
        },1000)
      })
    },
    promisethress(){
        setTimeout(()=>{
          console.log(33);
        },500)
    },
//vue中调用
//等promiseone和promisetwo请求回来后,再去请求promisethress。
//all()中的Promise对象执行先后顺序由自己快慢控制
created() {
      Promise.all([this.promiseone(),this.promisetwo()]).then(res=>{
        console.log(res,888);
        this.promisethress()
      })
  },

打印的结果


image.png

注:Promise.all()方法接受一个数组作为参数,参数都是Promise实例
可适用场景:异步请求3需要等异步请求1和2的数据作为参数去请求。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容