嵌套的网络请求怎么处理
从一个网络请求返回的结果筛选符合条件的数组a,再循环a数组发起a.length次网络请求获取返回结果,
这种异步怎么写啊?
testRequest () {
let _this = this;
let params = {
PageIndex: 1,
PageSize: 100,
PatientAgentID: _this.$store.state.mystudent.currentPatientId.ID
};
let result = []
api.requestTestList(params).then(res => {
let arr = res.Records.map(ele => ele.ID);
for (let i = 0;i < arr.length; i++) {
api.requestTestMembers({
ExamID: arr[i],
PatientAgentID: _this.$store.state.mystudent.currentPatientId.ID,
PageIndex: 1,
PageSize: 100
}).then(res => {
let newEle = res.Records.filter(function (ele) {
return ele.Status === 1
})
result.concat(newEle)
})
}
return result
})
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
不用写,把服务端的同事打一顿就好了~
如果打不过的话
async
函数应该是目前最好的异步解决方案。http://es6.ruanyifeng.com/#do...大概写出来是这样
但是你这一次性遍历一个数组发起这么多请求,不会爆掉服务器么?
让负责这个接口的同事重新改过