前端多文件打包下载方案

npm install jszip file-saver --save

import JSZip from 'jszip'
import { saveAs } from 'file-saver'
export const downloadFiles = (fileUrls, folderName = '下载') => {
  const folder = zip.folder(folderName);
  const downloadTasks = fileUrls.map((fileUrl) => {
    return fetch(fileUrl).then((imageContent) => {
      const name = fileUrl.split('/')[fileUrl.split('/').length - 1];
      // 写入二进制内容文件
      folder.file(name, imageContent.blob(), { binary: true });
    });
  });
  Promise.all(downloadTasks).then(() => {
    zip.generateAsync({ type: 'blob' }).then((content) => {
      // 写入本地
      saveAs(content, folderName);
    });
  });
};

posted @   懒惰ing  阅读(209)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
历史上的今天:
2021-01-04 设计模式之工厂模式
2021-01-04 设计模式之单例模式
点击右上角即可分享
微信分享提示