Appearance
batchDownloadFile 批量下载文件
function batchDownloadFile(fileList: Array<{ filePath: string; fileName?: string }>, zipName: string): Promise<void>
批量下载文件并打包为 ZIP。逐个拉取文件后打包为 ZIP 并触发浏览器下载。
参数
| 参数名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| fileList | 文件列表,每项包含文件路径和可选文件名 | Array<{ filePath: string; fileName?: string }> | 必填 |
| zipName | ZIP 文件名;未以 .zip 结尾时会自动补齐 | string | 必填 |
返回值
| 返回值 | 说明 | 类型 |
|---|---|---|
| promise | 打包并触发下载后 resolve 的 Promise | Promise<void> |
示例
typescript
import { batchDownloadFile } from '@mingto/tools'
await batchDownloadFile([
{ filePath: 'https://example.com/a.pdf' },
{ filePath: 'https://example.com/b.png', fileName: 'image.png' },
], 'attachments')
// 下载 attachments.zip注意事项
- 文件下载失败时会抛出
Error('批量下载失败,部分文件下载出错。')。 - 该函数依赖浏览器环境、
axios、file-saver和jszip。