当前位置: 首页 > news >正文

Vue项目中Axios取消请求功能实现

1,封装axios实例 request.js

const axios = require('axios');// 创建一个axios实例
const service = axios.create({baseURL: "https://ip:port",timeout: 60000
});export default service

2,封装请求 api.js

import service from 'request'
import axios from "axios";export const canCancelApi = (data, cancel) => {return service({url: '/api/test',method: 'post',data,cancelToken: new axios.CancelToken((c) => {cancel && cancel(c)})})
}

3,调用api

import {onBeforeUnmount} from 'vue'
import {canCancelApi} from "api";const apiCancel = null
// 通过回调接收caccel方法
canCancelApi(params, (cancle) => {apiCancel = cancle}).then(res => {})onBeforeUnmount(() => {if(apiCancel){// 关闭页面时如果请求存在则取消请求apiCancel('custom-cancel')}
}


http://www.mrgr.cn/news/14139.html

相关文章:

  • SCDN的优势在哪?Edge SCDN与传统SCDN有何不同?
  • Linux常见基础命令
  • 前端性能优化:使用Vue3+TS+Canvas对图片进行压缩后再上传,优化带宽,减小服务器存储成本,减少流量损耗
  • 算法:双指针
  • leetcode 142.环形链表II
  • 新手怎么学唱歌?
  • Linux | 文件系统进阶:Inode与软硬链接艺术剖析
  • 联想小新 Pro 16:AI启航版,定义笔记本性能新高度
  • C#入门篇5
  • 【QT】学习笔记:导出资源中静态文件
  • 测试面试题,自动化测试与性能测试篇(附答案)
  • 基于STM32开发的智能照明控制系统
  • JavaWeb基础 -- SpringMVC请求和响应
  • 单线程Redis:Redis为什么这么快
  • 网络自动化:利用Python和Ansible实现网络配置管理
  • 超详细超实用!!!java开发之IntelliJ IDEA下载与安装破解以及汉化教程(三)
  • Linux操作系统su命令详解,附代码
  • 大模型企业应用落地系列四》基于大模型的对话式推荐系统》大模型底座层
  • DNS部署与安全
  • 西门子PLC控制激光读头,profient转Ethernet IP网关应用