// 批量下载
handleMultipleDown() {
const zip = new JSZip();
const cache = {};
const promises = [];
this.fileList1.forEach((v) => {
const promise = this.getFileMethods(v.url).then((data) => {
// 下载文件, 并存成ArrayBuffer对象
zip.file(v.Name, data, { binary: true }); // 逐个添加文件
cache[v.Name] = data;
});
promises.push(promise);
});
Promise.all(promises).then(() => {
zip.generateAsync({ type: "blob" }).then((content) => {
// 生成二进制流
FileSaver.saveAs(content, "打包下载.zip"); // 利用file-saver保存文件
});
});
},
getFileMethods(url) {
return new Promise((resolve, reject) => {
axios({
method: "get",
url,
responseType: "arraybuffer",
})
.then((data) => {
resolve(data.data);
})
.catch((error) => {
reject(error.toString());
});
});
},
vue批量下载
最新推荐文章于 2024-04-19 15:44:38 发布