最近项目中遇到一个问题,需要angular6发送多个同步请求,所有的请求结果返回处理后再执行后面的逻辑,经过百度查找资料,解决方案如下:
ngOnInit() {
this.getMockDataFuc();
}
async getMockDataFuc() {
const result = await this.getPromiseData();
console.log('打印result数据 ' + result['state']);
if (result['state']) {
for (let i = 0; i < 2; i++) {
const result1 = await this.getPromiseData();
console.log(result1);
}
}
console.log('最后打印的');
}
getPromiseData () {
const result = this.getInfoService.getMockData().toPromise();
return result;
}说明: 1、调用的最外层函数中使用 async 修饰, 在方法体重,使用 await 修饰要发送的同步请求。
2、getPromiseData 方法是为了返回同步请求的res。toPromise,将res转成Promise对象
点击查看更多内容
1人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦