前端批量下载文件以较友好的形式下载

1.最近遇到一个需求,需要多选文件后实现下载,这里采用的是不打包形式。
2.vue前端下载文件一般都是直接新开一个窗口下载,但是这样会有一瞬间的闪屏,即开窗口关窗口这一瞬间的闪屏
3.于是采用js创建a标签实现无闪烁下载
直接写一个for循环,把file的url传入下载方法即可
下载方法代码如下:

async downloadFile(url) { 
try { let a = document.createElement("a"); 
// 创建a标签 
let e = document.createEvent("MouseEvents"); 
// 创建鼠标事件对象 
e.initEvent("click", false, false); 
// 初始化事件对象 
a.href = url; 
// 设置下载地址
a.download = ""; 
// 设置下载文件名 
a.dispatchEvent(e); 
}catch(e){ 
alert(e)
 }
  },

如果大家想压缩后再下载也可以,回去看我写的这篇文章就可以了
亲测可用,java+vue压缩及下载zip

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值