前端使用 jszip 实现打包批量下载文件

引入

import { saveAs } from 'file-saver';
import JSZip from 'jszip';
import axios from 'axios';

image

操作

export async function export_files_to_zip(fileList, zipName) {
  const zip = new JSZip();
  for (const file of fileList) {
    const response = await axios.get(file.url, { responseType: 'blob' });
    zip.file(file.name, response.data);
  }

  const content = await zip.generateAsync({ type: 'blob' });
  saveAs(content, zipName + '.zip');
}

image

posted @ 2024-09-20 16:41  东八区  阅读(369)  评论(0)    收藏  举报