想要实现批量下载压缩包需要有以下三个js文件
对应JSZipUtils文件地址:jszip-utils/jszip-utils.js at master · Stuk/jszip-utils · GitHub
对应JSZip文件地址:jszip/jszip.js at main · Stuk/jszip · GitHub
对应FileSaver文件地址:jszip/vendor at main · Stuk/jszip · GitHub
对应JSZip官网:How to use JSZip
把下方代码包裹在一个点击事件下即可:
function urlToPromise(url) {
//这里的JSZipUtils需要下载对应js
return new Promise(function(resolve, reject) {
JSZipUtils.getBinaryContent(url, function (err, data) {
if(err) {
reject(err);
} else {
resolve(data);
}
});
});
}
//引用JSZip函数
var zip = new JSZip();
//定义包名称
var img = zip.folder(ctrCheckArrs.name);
//循环遍历每个包名和包地址
for (let i=0;i<ctrCheckArrs.fileModel.length;i++){
img.file(ctrCheckArrs.fileModel[i].fileName, urlToPromise(ctrCheckArrs.fileModel[i].filePath), {base64: true});
}
zip.generateAsync({type:"blob"})
.then(function(content) {
// see FileSaver.js。这里是压缩包名称
saveAs(content, ctrCheckArrs.name+".zip");
});
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/weixin_52691965/article/details/125474418
内容来源于网络,如有侵权,请联系作者删除!