axios 封装

这里配合拦截器 和promise 再把axios 封装;过滤一遍; 

可以提高效率 

import axios from "axios";

import {Modal} from "antd";



const  axiosUtil = function ({...option}) {
    //在路由部分插入加载动画 移动端可以直接使用 Toast组件
    let loading =document.getElementById("loadingBox");
    axios.interceptors.request.use(function (config) {
        loading.style.display="block";
        return config
    });

//拦截响应
    axios.interceptors.response.use(function (config) {

        loading.style.display="none";
        return config
    });
    return new Promise((resolve,reject)=>{
        axios({
            url:option.url,
            method:option.method,
            baseURL:"https://www.easy-mock.com/mock/5bb61edebaa7dc5e5e8d18d0/mockapi",
            timeout:4000,
            params:option.params?option.params:""
        }).then((res)=>{

           if(res.status=="200"){
                 //直接拿结果 提高效率
                if(res.data.code=="0"){
                    resolve(res.data.result);
                }else{
                    // 直接抛出报错信息 方便调试
                    Modal.info({
                        title:`接口提示`,
                        content:`错误码: ${res.data.code},错误信息:${res.data.msg}`
                    })
                }

           }else{
               reject(res);
           }
        })


    })


};

export default axiosUtil;

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值