多个 axio 请求 同步 vue

84 阅读1分钟

标题中的 “vue”是引流,其实不论框架类型,只要用 axio都是一样的 效果。

进入正题 代码>>>>>>>>>>>>>>>

作为一个刚上手vue的后端,最近碰到了个需求, 要把 通过多个异步请求获取数据到一个 模板的 数组array1里,需要用的 时候 会有 func1 触发 来操作数组 网上 搜了一堆 代码的 但可复用性与可读性不高,我把我完成的 代码片段直接贴上来,各位觉得有需要改的 地方,直接自己改就好了。


async start_whole_post() {
...
...
            let res_list = []
            for (let i = 0; i < request_list.length; i++) {
              const payload = {
                recodeName: request_list[i],
              }
              // 下面是我对 axios.post 的简单封装效果一致的
              // tes = axios.post(urlPath, payload, {timeout: time_out})
              let tes = await Rapi.methods.send_api(payload, co.data().Sum, 'POST', time_out);
              res_list.push({"sectionTag": request_list[i], "res": tes})
            }
            for (const key in res_list) {
              const line = {'recode_name': '', 'sections': []}
              line['sections'] = res_list[key]["res"].data['msg']
              line['sectionTag'] = res_list[key]['sectionTag']
              this.array1.push(JSON.parse(JSON.stringify(line)));
            }