我正在使用JSZip创建一个包含多个.xml文件的.zip文件,如下所示:
// get each xml in string format and add it to zip object
let zip = new JSZip();
for(let i = 0; i < containers.length; i++){
let xml = getXML(i);
zip.file("file"+i+".xml", xml);
}
// download the .zip file
zip.generateAsync({
type: "base64"
}).then(function(content) {
window.location.href = "data:application/zip;base64," + content;
});
虽然.zip文件可以完美创建和下载,但是文件名却是默认的“download file”。我想要做的是随意命名该文件(例如allXMLs.zip)。
我查看了JSZip文档,但没有找到真正有启发性的内容,非常感谢您的帮助。
saveAs
有一个第二个参数,它是文件名。因此我认为你需要将文件写入磁盘以便命名。 - TannersaveAs
函数属于FileSaver.js
,目前我在我的项目中尚未包含它。我想知道是否有一种方法可以不包含它。 - NickAthFileSaver.saveAs
只是创建了一个<a>
元素并设置了它的download
属性。@JordanBurnett 已经发布了它的简短版本。 - Andreas