vue使用promise.all发送多个请求

Promise.all可以将多个Promise实例包装成一个新的Promise实例。同时,成功和失败的返回值是不同的,成功的时候返回的是一个结果数组,而失败的时候则返回最先被reject失败状态的值。
首先新建api文件夹,新建文件index.js和port.js
index.js封装公共求求方法和参数
port.js存放接口路径
index.js

 postparams(url, data) {
       return axios({
            method: 'post',
            url: handleUrl(url),
            data: handleParams(data),
            timeout: TIME_OUT_MS,
            headers: {
                'Content-Type': 'application/json; charset=UTF-8',
                "Organization-Code": "js"
            }
        })
    },

port.js

export default {
    organList:'/organList', // 机构列表
}

页面


Promise.all获得的成功结果的数组里面的数据顺序和Promise.all接收到的数组顺序是一致的,Promse.all在处理多个异步处理时非常有用,比如说一个页面上需要等两个或多个ajax的数据回来以后才正常显示,在此之前只显示loading图标。
Promise.race
Promse.race就是赛跑的意思,意思就是说,Promise.race([p1, p2, p3])里面哪个结果获得的快,就返回那个结果,不管结果本身是成功状态还是失败状态。

你可能感兴趣的:(vue.js)