开发中 通常会遇到多个异步并行的情况 ,Promse.all在处理多个异步处理时非常有用,比如说一个页面上需要等两个或多个ajax的数据回来以后才正常显示,在此之前只显示loading图标。(在同一个函数里面要同时调用两个不同的接口 两个接口的返回数据 做为下一步操作的依据)
当需要同时执行两个异步,用Promise.all可以做到
//实例1
constobject=newPromise((resolve,reject)=>{
readInfo()
.then(res=>{
constdata=res.data.data
this.object=Object.assign(this.object,data)
resolve(res)
})
.catch(()=>{
reject()
})
})
//实例2
constdatas=newPromise((resolve,reject)=>{
readCount(this.type)
.then(res=>{
constdata=res.data.data
this.datas[this.type] =data
resolve(res)
})
.catch(()=>{
reject()
})
})
Promise.all([object,datas])
.then(res=>{
console.log(res)
})