为什么请求提前执行了?
async submit() {
let arr = this.list.map(item => {
return this.sendRequest({
id: item['id'],
axis: `${item.x}%`
})
}) //请求在这就执行了
let res = await Promise.all(arr)
if (res) {
console.log('success')
}
},
sendRequest(data) {
return new Promise((resolve, reject) => {
resolve(updatePro(data))
})
}
只要
this.sendRequest({})
一执行,对应的请求就会发出,所以map
遍历的同时就已经把请求挨个发完了,Promise.all
只不过是在等结果(而不是等请求)。程序看起来不会有问题,你不妨说一下预期效果是什么样子的。