loading && 请求拦截

137 阅读1分钟

页面的loading加载

这里直接附上代码

const loading = {
    loadingStance : null,
    open : function(){
        console.log("111")
        if(this.loadingStance === null){  //防止切换路由时重复加载
            this.loadingStance = Loading.service({
                target : ".main",
                text : "拼命加载中",
                background : "rgba(0,0,0,0.5)"
            });
          }  
    },
    close : function(){
        if(this.loadingStance !== null){
            this.loadingStance.close();
        };
        this.loadingStance = null;
    }
}

//添加拦截器
//请求拦截
request.interceptors.request.use(config=>{
    //打开加载中
    loading.open();

    // 在发送请求之前做些什么
    return config;
},error=>{
    loading.close();
     // 对请求错误做些什么
    return Promise.reject(error);
})

//响应拦截
request.interceptors.response.use(response=>{
    //关闭加载中
    loading.close();
    // 在响应成功之前做些什么
    return response;
},error=>{
    loading.close();
    // 对响应失败做些什么
    return Promise.reject(error);
})

登录请求拦截

request.interceptors.request.use(
    config => {
        //获取本地登录数据
        const token = localStorage.getItem('adminToken')
        if (token) {
            //发送请求头
            config.headers.Authorization = 'Bearer' + token
        }
        return config
    },
    error => {
        return Promise.reject(error)
    }
)