promiseAll 使用

  // request.js
import axios from 'axios'

axios.defaults.baseURL = `${process.env.VUE_APP_BASE_API}`

// 设置超时时间
axios.defaults.timeout = 30000
// post请求头
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'
axios.defaults.headers.post['way'] = constv.Proxy_Way
 
// 对外接口
export function request ({ method, url, params, responseType, header }) {
  if (method === 'Get') {
    return get(url, params, responseType)
  } else if (method === 'Post') {
    return post(url, params, responseType)
  }
}
 
// 封装get方法
function get (url, params, responseType) {
  return new Promise((resolve, reject, responseType) => {
    axios.get(url, params).then(res => {
      resolve(res.data)
    }).catch(err => {
      reject(err.data)
    })
  })
}

 


// api.js
import { request } from '@/utils/request2'
  static getActList (params, spine_parse_status) {
    let reqUrl = 'abc'
    return request({ method: 'Get', url: reqUrl })
  }




// some.vue

async getOnePartAct (partName, tmpId, version) { const data
= await this.$api.spineApi.getActList({ tid: tmpId, version }, 1)
        const data2= await this.$api.spineApi.updateAtlas(data)

        const data3= await this.$api.spineApi.makeLayerAndAtlas(data2)
this.allPartAct[partName] = data3
    },

    const reqActArray = []
    reqActArray.push(
          this.getOnePartAct(key, crtTmp.template_id, crtTmp.version)
    )

    Promise.all(reqActArray).then(_ => {
        this.allPartActFlag = true
      }).catch((error) => {
        console.log('this.allPartAct error..', error)
      })
原文地址:https://www.cnblogs.com/dhjy123/p/15472384.html