zoukankan      html  css  js  c++  java
  • axios 取消上一次的请求

    需求

     在select change事件中,由于每次change都要去请求接口,但是这个接口返回的极慢,就会出现了,切换了多次,请求了很多次,

    但是可能有的请求返回错误,有的有数据

    接着,在接口请求超时或者是返回成功的时候,就会出现

    页面上可能一直在弹出请求失败的消息,而下拉中缺有数据的尴尬请求

    为了解决这种情况,我在axios中进行取消处理

    引入axios
    import axios from 'axios';
     
    //
    const CancelToken = axios.CancelToken;
    在全局先定义一个cancle变量
    window.cancle=null;
    .... //省略其他代码
    res = await axios({ url: `${process.env.apiBase}${url}`, method, data, params, timeout, //跨域请求是否需要凭证,默认false withCredentials, headers, responseType, cancelToken:new CancelToken(function executor(c) { 在axios封装的函数中写上这句就可以了 window.cancle = c; }) })
    ....省略其他代码


    使用

    handleSourChange(value){   //在切换select的操作中
            cancle();
            if(value){
              this.getTableListFn(value);
            }
              
       },

    就可以了

  • 相关阅读:
    sql笔记
    [ACTF2020 新生赛]Include
    [极客大挑战 2019]Http
    [极客大挑战 2019]Knife
    [极客大挑战 2019]Secret File
    [HCTF 2018]admin
    [极客大挑战 2019]Havefun
    [RoarCTF 2019]Easy Calc
    ascll码转化
    《逆向工程核心原理》笔记第一章到第十一章
  • 原文地址:https://www.cnblogs.com/fyjz/p/13564170.html
Copyright © 2011-2022 走看看