乐趣区

关于javascript:在vue项目中取消axios请求单个和全局

勾销 axios 申请的官网文档阐明:http://www.axios-js.com/zh-cn…

单个申请

index.vue—> 在申请接口时,除了传递参数,再传递一个 this 过来。

import requestList from '@/api/list.js'
// 发出请求
requestList({id:1},this).then(res=>{}).catch(err=>{})

// 勾销申请的写法,传进去的是提醒
this.cancel("操作勾销");

api/list.js—> API 接口处,引入 axios,定义 CancelToken,写 new CancelToken

import axios from 'axios'
const CancelToken = axios.CancelToken;

export function searchList(data, that) {
    return request({
        url: '/list',
        method: 'post',
        disLoading: true,
        data,
        cancelToken: new CancelToken(function executor(c) {that.cancel = c;})
    })
}

全局配置

应用 vuex 的 mixin 实现,我跟着代码打了一遍,尽管进入了 cancelToken 的办法,然而并没有勾销申请。来活了,等会再尝试一下。参考代码在:https://github.com/dadaiwei/v…


参考:https://blog.csdn.net/qq_4409…

退出移动版