场景描述:
step1: 请求list接口获取数据,item中有一个url属性,值为string
step2: 请求url的链接获取页面渲染所需的json数据
由于需要循环调用与then中重新组装数据,因此入坑(无法在调用的then中获取到数据)
问题写法(简写):
.vue中
store.js中
以上问题写法 sore.js中返回的backList为空,vue中then方法获取的res数据为空,原因即为异步问题
使用promise.all的正确写法
vue中不变
store.js中修改如下:
根据promise.all的参数知道需传入的也是promise,故map一下数组中的url及对应的请求生成一个新的数组,传入到promise.all中,执行后获取的all即为数据所有url请求的返回值,再对返回值做重新解析,至此完成调用,正常获取返回值