zoukankan      html  css  js  c++  java
  • vue-统一处理超时axio请求

    import axios from 'axios'
    //设置全局的请求次数,请求的间隙
    axios.defaults.retry =2;
    axios.defaults.retryDelay = 1000;
    axios.interceptors.response.use(undefined, function axiosRetryInterceptor(err) {
     var config = err.config;
     // 如果config不存在或未设置重试选项,请拒绝
     if(!config || !config.retry) {Vue.$vux.loading.hide(); return Promise.reject(err)};
     // 设置变量跟踪重试次数
     config.__retryCount = config.__retryCount || 0;
     // 检查是否已经达到最大重试总次数
     if(config.__retryCount >= config.retry) {
      //  vux转圈圈的那个隐藏
       Vue.$vux.loading.hide();
       // 抛出错误信息
      return Promise.reject(err);
     }
     // 增加请求重试次数
     config.__retryCount += 1;
     // 创建新的异步请求
     var backoff = new Promise(function(resolve) {
      setTimeout(function() {
       resolve();
      }, config.retryDelay || 1);
     });
     // 返回axios信息,重新请求
     return backoff.then(function() {
      Vue.$vux.loading.hide();
      return axios(config);
     });
    });
  • 相关阅读:
    css引入方式
    HTML标签
    动态导入模块impoerlib
    pymysql连接数据库
    创建数据库表之引擎
    IO多路复用互动聊天,select函数监听
    欧拉筛法求素数个数
    与三角形相关的问题 WITH 有向面积
    时间复杂度的计算
    折半查找
  • 原文地址:https://www.cnblogs.com/liuguoying/p/11579627.html
Copyright © 2011-2022 走看看