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

vue项目从后端下载文件显示进度条或者loading

//API接口
export const exportDownload = (params?: Object, peCallback?: Function) => {return new Promise((resolve, reject) => {axios({method: 'get',url: '',headers: {'access_token': `${getToken()}`,},responseType: 'blob',params,onDownloadProgress: (pe) => {peCallback ? peCallback(pe) : '';},}).then((res) => {resolve(res);}).catch((err) => {console.warn(err);});});
};
function peCallback(pe) {// 下载回调
//百分比计算defaultPercent.value = Math.round((pe.event.loaded / pe.event.total) * 100);if (pe.event.loaded === pe.event.total) {showProgress.value = false;message.success({ content: '下载完成', key, duration: 3 });}}try {exportDownload(params peCallback).then((res) => {// 接口3const fileName = 'xxx.xlsx';let bold = new Blob([res.data]);const newUrl = window.URL.createObjectURL(bold);const link = document.createElement('a');link.href = newUrl;link.setAttribute('download', fileName);document.body.appendChild(link);link.click();link.parentNode?.removeChild(link);});} catch (error) {message.warn('下载失败,请重试');}

http://www.lryc.cn/news/310116.html

相关文章:

  • [技巧]Arcgis之图斑四至点批量计算
  • 【java】20:枚举
  • ★【二叉搜索树(中序遍历特性)】【 ★递归+双指针】Leetcode 98. 验证二叉搜索树
  • 打造无缝滚动体验:JavaScript中的scrollIntoView()方法实战指南
  • 实战:如何将Oracle单实例数据库转换成Oracle RAC数据库
  • 基于华为atlas的分类模型实战
  • 编程语言:SQL Server数据库使用教程,SQL Server增删改查语句
  • 【tableau学习笔记】tableau无法连接数据源
  • cetos7 Docker 安装 gitlab
  • 无极低码:无极低码部署版操作指南
  • C语言实现日本某地发生了一件谋杀案
  • 【C++】const成员
  • 利用小蜜蜂AI智能问答ChatGPT+AI高清绘图生成图文故事案例
  • Github项目推荐-LightMirrors
  • day14:栈排序
  • 【LeetCode:2368. 受限条件下可到达节点的数目 + BFS】
  • pyorbbecsdk奥比中光python版本SDK在Windows下环境配置笔记
  • YOLOV8介绍
  • 【ElfBoard】基于 Linux 的智能家居小项目
  • 自动化测试介绍、selenium用法(自动化测试框架+爬虫可用)
  • 深度学习的一个完整过程通常包括以下几个步骤
  • WPS如何共享文件和文件夹
  • PowerData 2024“数字经济-城市开源行”活动预告
  • QT多语言切换功能
  • windows上elasticsearch的ik分词器的安装
  • 基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的口罩识别系统(Python+PySide6界面+训练代码)
  • 在Windows系统中启动Redis服务
  • k8s.gcr.io/pause:3.2镜像丢失解决
  • 全面整理!机器学习常用的回归预测模型
  • 在vue中对keep-alive的理解,它是如何实现的,具体缓存的是什么?