axios取消请求

Axios 使用 cancel token 取消请求

1、先在axios请求中加上cancelToken

复制代码
import request from '../utils/request' // 配置过的Axios 对象
import axios from 'axios' 

export function getDetail(params, that) { 
  return request({
    url: '/api/indexlineage/detail', 
    method: 'get',
    params: params,
    cancelToken: new axios.CancelToken(function executor(c) { // 设置 cancel token
      that.source = c;
    })
  })
}

2、在组件中调用

复制代码
import { getDetail} from "../api";
export default {
    data() {
      return {
        source: null
      }
    },
    methods: {
      cancelQuest() {
        if (typeof this.source === 'function') {
          this.source('终止请求'); //取消请求
        }
      },
      getDetailData(val) {
        this.cancelQuest() // 请求发送前调用
        let params = {
            id: '1',
        }
        getDetail(params, this).then(res => {
              console.log(res)
            }
        )
    }
}
相关推荐
.ZGR.13 小时前
线程池相关知识及并发统计案例实现
java·开发语言
流年如夢13 小时前
初入C++
开发语言·c++
zzzsde13 小时前
【Linux】线程同步和互斥(1):线程互斥与加锁实现
linux·运维·服务器·开发语言·算法
yoyo_zzm13 小时前
编程语言大比拼:C++到PHP全解析
开发语言·c++·php
努力努力再努力wz13 小时前
【C++高阶数据结构系列】:时间轮定时器详解:原理分析与代码实现,带你从零手撕时间轮!(附时间轮的实现源码)
c语言·开发语言·数据结构·c++·qt·算法·ui
ljt272496066113 小时前
Vue笔记(三)--用户交互
javascript·vue.js·笔记
颖火虫盟主13 小时前
Hello World MCP Server 实现总结
java·前端·python
Martin -Tang13 小时前
uniapp 实现录音操作,长按录音,放开取消
前端·javascript·vue.js·uni-app·css3·录音
Chen_harmony13 小时前
十九、数据在内存中的存储
c语言·开发语言
basketball61613 小时前
C 的 malloc/free 与 C++ 的 new/delete 一些区别
c语言·开发语言·c++