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)
            }
        )
    }
}
相关推荐
lsx2024061 分钟前
JavaScript 字符串模板
开发语言
@yanyu6663 分钟前
04vue3基础
前端·javascript·vue.js
2501_908329853 分钟前
嵌入式LinuxC++开发
开发语言·c++·算法
兑生3 分钟前
【灵神题单·贪心】1833. 雪糕的最大数量 | 排序贪心 | Java
java·开发语言
兑生7 分钟前
【灵神题单·贪心】3010. 将数组分成最小总代价的子数组 I | Java
java·开发语言·算法
IT_陈寒11 分钟前
JavaScript 闭包陷阱:90%开发者踩过的5个坑,你中招了吗?
前端·人工智能·后端
Java面试题总结11 分钟前
go从零单排之方法
开发语言·后端·golang
Jay_Franklin12 分钟前
Python一站式科研工作流:从数据分析到报告生成
开发语言·python·论文笔记
小堃学编程14 分钟前
【项目实战】基于protobuf的发布订阅式消息队列(1)—— 准备工作
java·大数据·开发语言
setmoon21416 分钟前
C++中的构建器模式
开发语言·c++·算法