当前位置: 首页 > article >正文

for循环中批量调用接口,等接口全部执行完成后处理——js基础积累

最近在写后台管理系统的时候,遇到一个需求,就是要for循环遍历,然后每一项都要进行接口的调用,然后接口全部执行完成后再进行其他的操作。

下面有两种方式来处理:

1.可以通过Promise.all的方式来处理——接口异步同时进行

let tableData = [];
let proArr = [];
this.arr.forEach(item=>{
	proArr.push(接口(入参).then(res=>{tableData = tableData.concat(res.data.items)}))
})
Promise.all(proArr).then(()=>{此时tableData的数据就是最终的了})

2.可以通过for循环+async+await的形式来处理——接口同步进行,一个执行完了再执行下一个,这个对后端接口而言更友好

async getDataList(){
	for(let item of this.arr){
		await 接口(入参).then(res=>{tableData = tableData.concat(res.data.items)}
	}
	此时tableData的数据就是最终的了
}

注意:不能使用forEach,只能用for循环,或者map等
在这里插入图片描述


http://www.kler.cn/a/402170.html

相关文章:

  • 新书速览|循序渐进Spark大数据应用开发
  • 2024游戏陪玩app源码的功能介绍/线上陪玩交友上线即可运营软件平台源码搭建流程
  • 【Linux探索学习】第十三弹——进程状态:深入理解操作系统进程状态与Linux操作系统中的进程状态
  • JS中检测数据类型的有哪些?
  • adb使用
  • 力扣(leetcode)题目总结——辅助栈篇
  • SpringSecurity 鉴权认证入门讲解
  • Cyberchef使用功能之-多种压缩/解压缩操作对比
  • Postman之pm.test断言操作
  • 【Homework】【7】Learning resources for DQ Robotics in MATLAB
  • 大模型本地部署实践:Ollama+Open-WebUI(MacOS)
  • 鸿蒙中服务卡片数据的获取和渲染
  • 72项!湖北省2024年度第二批省级科技计划项目拟立项项目公示!
  • 基于豆包MarsCode 和 Threejs 实现3D地图可视化
  • 关于Web Component
  • 前端面试笔试(四)
  • 使用Go语言编写一个Web服务器,处理客户端的HTTP请求,并返回相应的HTML页面。
  • 百度AI人脸检测与对比
  • 优选算法--快乐数(快慢指针)循环链表
  • 《物理学进展》