需求:点击按钮下载全部的附件
条件: 点击下载按钮调后端接口,返回一个URL ,数组。
前端JS: 循环遍历这个数组,自动下载
贴代码:
downUrlList(url) {
// 循环返回的URL数组多文件下载方法
var eleLink = document.createElement('a');
eleLink.style.display = 'none';
eleLink.download = this.filerName(url);
var blob = new Blob([url]);
eleLink.href = URL.createObjectURL(blob);
document.body.appendChild(eleLink);
eleLink.click();
document.body.removeChild(eleLink);
},
// 写在点击下载的事件里面
// downloadUrls大概是这个样子的数组
// ['/file/text1.txt', '/file/text2.txt', '/file/text3.txt']
let list = res.data.result.downloadUrls; // 后端返回的数组
for (let i = 0; i < list.length; i++) {
this.downUrlList(list[i]);
}
filerName(url) {
// 提取下载的文件名
let a = url.split('/');
return a[a.length - 1];
},