如图,我现在是在每个组件里面都要写一个res.status === -1的判断,我想要能在一个地方监控到只要出现-1这种情况就执行一段图片中的那段代码,求大神指点指点。
如图,我现在是在每个组件里面都要写一个res.status === -1的判断,我想要能在一个地方监控到只要出现-1这种情况就执行一段图片中的那段代码,求大神指点指点。
一般ajax库都有拦截器的,你可以去看一下文档
ps:这是我用vue-resource写的拦截器,基本差不多的
//main.js
//vue-resource拦截器
Vue.http.interceptors.push(function (request, next) {
if(request.method == 'POST') { //post请求 设置Content-Type
request.headers.set('Content-Type', 'application/x-www-form-urlencoded')
}
next(res => { //检测token是否失效
if(res.data.code == '400') {
if(res.data.msg == '登录失效') {
console.log('拦截器')
this.$store.dispatch('toast', {
message: res.data.msg,
icon: '2'
})
setTimeout(() => {
this.$router.push({
name: 'login'
})
}, 1500)
}
}
return res
})
})
9 回答1.8k 阅读✓ 已解决
6 回答1.8k 阅读
3 回答1.5k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读
2 回答1.3k 阅读✓ 已解决
3 回答1.5k 阅读✓ 已解决
单独写一个
ajax.js
封装异常处理,然后在每个页面引用你的ajax.js不行吗