每个请求都放到promise中,这样就构成了一个包含15个promise的数组,使用Promise.all(promise数组)并发执行,然后then取出数据。
最终效果图大概这个样子,示意,可能有bug
async getData() { let promises = []; this.Arr.forEach(val => {
promises.push(new Promise(resolve, reject) { let obj = {}; let itemBody = {key:val}
post(this.dataUrl, itemBody, this.header)
.then(data=>resolve({[val]:data.result.res}))
.catch(reject);
});
}); let closeAry = await Promise.all(promises); this.closeAry = closeAry; let setKey = this.getStorageKey();
wx.setStorageSync(setKey.toString(), closeAry);
}