import JSZip from "jszip";
import { saveAs } from 'file-saver'
createZipWithImages() {
const zip = new JSZip();
// 假设有两个图片文件,分别为image1.jpg和image2.png
const imageUrls = ['image1.jpg', 'image2.png'];
// 创建一个Promise数组来存储所有fetch操作的Promise
const fetchPromises = imageUrls.map((imageUrl) => {
return fetch(imageUrl)
.then((response) => response.blob())
.then((blob) => {
// 将图片文件添加到ZIP文件中
const url = new URL(imageUrl);
console.log(url)
const fileName = url.pathname.split('/').pop();
zip.file(fileName, blob);
});
});
// 等待所有fetch操作完成
Promise.all(fetchPromises)
.then(() => {
// 生成ZIP文件
zip.generateAsync({ type: 'blob' }).then((content) => {
// 下载ZIP文件
saveAs(content, 'images.zip');
});
})
.catch((error) => {
console.error('下载图片时出错:', error);
});
}
网友评论