axios.all方法
axios.all
;
axios.spread
;
作用:解决并发请求;
语法:
axios.all([fn1(),fn2()]).then((fn1,fn2)=>{
console.log(res1,res2)//res1为fn1函数的返回值,res2为fn2函数的返回值
})
该方法是基于promise.all的
例子:
methods: {
fn1(){
return this.$axios.get(`url1`)
},
fn2(){
return this.$axios.get(`url2`)
}
},
mounted(){
let _this=this//要改变this指向,因为promise中的this 指向promise实例
this.$axios.all([_this.fn1(),_this.fn2()]).then(//并行请求要加()调用
_this.$axios.spread((res1,res2)=>{
console.log(res1)
console.log(res2)
})
)
}
注意
用axios.all()、axios.spread()这两个函数来处理多个请求,该方法是axios的静态方法,不是axios实例方法! 不是axios实例方法! 不是axios实例方法 ,写错会报错
**
[外链图片转存中…(img-QQqYdx0Z-1628686668656)]