vue+iView实现下载zip文件导出多个excel表格

news/2024/11/9 2:19:13/

1,需求:在vue项目中,实现分月份导出多个Excel表格。

点击导出,下载zip文件,解压出多张表数据。

2,关键代码:

<Button  class="export button-style button-space" @click="exportDetail"  :disabled="isAllowed">导出</Button>
 this.downZips("/list/export", "导出", this.queryParam);
downZips(exportUrl, fileName, params) {this.isAllowed=truethis.$axios.request({method: "post",url: exportUrl,data: params,responseType: "blob"}).then((res) => {let reader = new FileReader()reader.readAsText(res.data)reader.onload = () => {if (res.data.type === 'application/json') {this.isAllowed=falselet resData = JSON.parse(reader.result)if (resData.code == 200005||resData.code == 200007) {this.$Message.error(resData.errorMsg)// 重复调用错误提示}} else {if (res.status === 200) {let fileName=  res.headers['content-disposition'].replace('attachment;filename*=',             '');let data = res.data;let blob = new Blob([data],{ type: " application/octet-stream" });let url = window.URL.createObjectURL(blob);const link = document.createElement("a"); link.href = url;if(fileName!=undefined){ link.download = decodeURIComponent(fileName);}else{ link.download = fileName}link.click();URL.revokeObjectURL(url);this.isAllowed=false} else {this.$Message.error('下载失败')this.isAllowed=false}}}}).catch((error) => {this.$Message.error(error);this.isAllowed=false});
},

3.效果
在这里插入图片描述

往期更多精彩:
vue+iView实现导入与导出excel功能
vue+iView 导出功能提示解析
React+Ant Design实现导出excel表格


http://www.ppmy.cn/news/1212406.html

相关文章

哨兵1号回波数据(L0级)产品目录介绍

1 数据包总览 哨兵1号L0级数据产品系列如下图所示&#xff0c;本文针对图中红框中的数据产品进行介绍&#xff08;定标数据、噪声数据没下载到。。。&#xff09;。 1.1 数据包名称 示例&#xff1a; S1A_S3_RAW__0SSV_20211230T105851_20211230T105907_041237_04E698_94F0.S…

基于python+TensorFlow+Django卷积网络算法+深度学习模型+蔬菜识别系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 介绍了TensorFlow在图像识别分类中的应用&#xff0c;并通过相关代码进行了讲解。通过TensorFlow提供的工具和库&am…

Flutter之Json序列化

前言 使用 json_annotation 框架实现json字符串序列化和反序列化 框架官方地址&#xff1a;json_serializable 一、引入依赖&#xff1a;在pubspec.yaml中添加 dependencies:json_annotation: ^4.8.1dev_dependencies:build_runner: ^2.3.3json_serializable: ^6.6.0 二、…

2023年第十六届山东省职业院校技能大赛高职组“信息安全管理与评估”赛项规程

第十六届山东省职业院校技能大赛 高职组“信息安全管理与评估”赛项规程 一、赛项名称 赛项名称&#xff1a;信息安全管理与评估 英文名称&#xff1a;Information Security Management and Evaluation 赛项组别&#xff1a;高职组 赛项归属&#xff1a;电子与信息大类 二…

使用 OpenCV 进行立体相机深度估计 (Python/C++)代码实现

您是否想知道机器人如何在移动时自主导航、抓取不同的物体或避免碰撞?使用基于立体视觉的深度估计是此类应用的常用方法。在这篇文章中,我们讨论立体匹配和深度感知的经典方法。我们使用立体相机和 OpenCV 解释深度感知。我们分享 Python 和 C++ 代码以获取实践经验。 这篇文…

vue中怎么在路由守卫中使用vuex中的数据

一、问题 Vuex 是一个面向 Vue.开发的状态管理模式。它主要用于管理应用程序中的共享状态。我们在项目中经常用它管理很多组件都要使用的数据。 我们只需要把它安装到vm上&#xff0c;就可以在组件中使用this.$store得到它。 但是我现在要在路由守卫中读取其中的某个数据&…

如何用Excel软件制作最小二乘法①

一、用自带的选项&#xff08;不推荐&#xff09;&#xff0c;因为感觉只是近似&#xff0c;虽然结果一样 1.在Excel中输入或打开要进行在excel中输入或打开要进行最小二乘法拟合的数据&#xff0c;如图所示。 2.按住“shift”键的同时&#xff0c;用鼠标左键单击以选择数据&a…

Go相关命令说明

目录 go get&#xff1a;下载第三方库的源代码&#xff0c;并将其放在$GOPATH/src目录下go install&#xff1a;编译并安装Go程序或库&#xff0c;将其生成的二进制文件安装到$GOPATH/bin或($GOPATH/pkg 如果是库)目录中go mod tidy &#xff1a;清理未使用依赖项&#xff0c;并…