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

vue js 前端同时下载多个文件,前端多文件下载

在日常需求中,一般情况下,单次点击下载文件数量一般是一个,当然也有多个文件同时下载的需求,由于浏览器机制,不支持直接多个文件下载,所有需要特殊处理

案例图
在这里插入图片描述

不多说了,直接上代码

 //下载文件downloadPapers() {let obj = {id: this.examId,}exportFile的接口(obj).then((res) => {if (res.code == 200) {this.$message({message: '下载成功!',type: 'success',duration: 2000,})res.data.forEach((file, index) => {this.downloadFile(file,index == 0 ? this.timestamp + '文件1' : this.timestamp + '文件2'      //相当于是一个文件自定义的名称)})}})},//阻止href多文件下载只下载一个问题方法downloadFile(url, filename) {const xhr = new XMLHttpRequest()xhr.open('GET', url, true)xhr.responseType = 'blob'xhr.onload = () => {if (xhr.status === 200) {const blob = xhr.responseconst link = document.createElement('a')link.href = window.URL.createObjectURL(blob)link.download = filenamelink.click()}}xhr.send()},

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

相关文章:

  • oracle和mysql查询某字段在哪个表中
  • 关于路由和负载均衡
  • GitLab Merge Request流水线
  • 基于Matlab GUI的信号发生器界面程序示例
  • 【设计模式】单例模式
  • JVM的原理和性能调优
  • MySQL索引详解:原理、数据结构与分析和优化
  • springboot admin监控
  • 设计模式六大原则中的里氏替换原则
  • 基于spring boot的酒店管理系统
  • es插件 安装Elasticvue插件
  • 3-Electron打开新窗口,并跳转到指定的路由
  • 虚幻5|AI行为树,跟随task(非行为树AI)
  • 【Docker】docker的数据持久化
  • 在Linux系统下配置IP地址的方法
  • VS Code 远程连接SSH服务
  • openEuler安装openGauss5.0单机数据库
  • 海山数据库(He3DB)源码详解:He3DB-XLogWrite函数
  • Sa-Token学习圣经:史上最全的权限设计方案,一文帮你成专家
  • 【数字三角形】