axios拦截器
解决用户过了一段时间就需要重新登陆优化代码的方案
- 在main.js里面写入axios拦截器
- 引入拦截器
// 添加响应拦截器
axios.interceptors.response.use(function (response) {
// 对响应数据做点什么
return response;
}, function (error) {
// 对响应错误做点什么
return Promise.reject(error);
});
- 改写成箭头函数
axios.interceptors.response.use((response)=> {
// 对响应数据做点什么
return response;
}, (err)=> {
// 对响应错误做点什么
return Promise.reject(err);
});
- 再把catch里面的内容复制过来
//先挂载
import {Message} from "element-ui"
//在引入
if (err.response.data && err.response.data.errorCode) {
//把this.$message.error(err.response.data.msg);改成下面这种形式
Vue.prototype.$message(err.response.data.msg);
}