// 输出结果为 [ 0, 1, 2 ] 执行了 3 秒
// 此方法用在 一个循环体中,拿到每个异步请求返回的值 , 并等待循环中的 所有异步函数执行完,再进行下一步操作!
// 如 node.js 中 拿到购物车表的数据,只有商品的id ,没有商品的具体信息, 需要去遍历购物车的表, 再用每一个商品id 去遍历商品表,去拿商品具体信息!
mounted(){
let array = []
for(let i=0; i<3; i++){
array.push(this.testForPromise(i))
}
Promise.all(array).then((res) => {
console.log(res) // [ 0, 1, 2 ]
})
},
methods:{
testForPromise(num){
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(num)
}, 3000)
})
}
}
网友评论