在写项目时遇到,需要先通过双重循环后,一次去请求对应的接口,拿数据。研究后,决定使用 Primose 的方案解决
const promise = [];//用来接受这些请求
for (let i = 0; i < a.length; i++) {
for (let j = 0;j < a[i].b.length;j++) {
pro.push(
new Promise((resolve, reject) => {
接口({id:a[i].b[j].id}).then((res) => {
a[i].b[j].list = res.data.list;
resolve()//此处 resolve,不需要返回数据
});}));}
}
Promise.all(promise).then(() => {//在Promise.all后进行后续操作,此案例为视图更新
this.form = obj;
this.$forceUpdate();
})