再次封装axios

import Vue from 'vue'
import axios from 'axios'
import qs from 'qs'
Vue.prototype.request= ({url,type='get',data={},headers={},options={},success,fail=null,complate=null})=>{
    if(type.toLowerCase()==='get'){
        data={
            params:data
        }
        axios.get(url,data,{
           …header,…options
}).then(res=>{
            success(res.data);    //在函数里使用this 要用箭头函数,要不然会导致this指向问题
        }).catch(error=>{
            fail?fail(error):null;
        }).finally(()=>{
            complate?complate():null;
        })
    }
    if(type.toLowerCase()==='post'){
        if(!data.constructor===FormData){
            data=qs.stringify(data);
        }
        axios.post(url,data,{
            …headers,…options
}).then(res=>{
            success(res.data);
        }).catch(error=>{
            fail?fail(error):null;
        }).finally(()=>{
            complate?complate():null;
        })
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值