vue拦截状态码402,并弹出弹窗

新手上路,请多包涵

目前在做一个PC端的后台管理系统,有一个功能是第一次登陆弹出一个输入验证码的弹窗,并提醒用户还有几天的试用时间(可试用30天),如果没有输入,以后的每次登录都要弹出这个弹窗,并减少相应的试用天数。当30天时间到了之后(此时再发请求,code码一律是402),再次弹出输入验证码的弹窗,我想问一下,这个功能在哪里操作,这个弹窗应该写在哪里,怎么样才能不论在哪个页面都可以弹出这个弹窗呢???

阅读 4.2k
2 个回答

貌似有一个叫 beforeEach 的导航钩子, 在里面写判断就可以了

用axios的拦截器去处理这个:

// 添加请求拦截器
axios.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    return response;
  }, function (error) {
    // 对响应错误做点什么
    return Promise.reject(error);
  });

然后你可以在response拦截器进行统一的错误处理。

推荐问题
宣传栏