Javascript JSZip创建空存档
我试图通过递归地将文件和子文件夹添加到zip,然后使用AJAX上传zip来上传文件夹。下面是我编写的代码:Javascript JSZip创建空存档,javascript,jszip,Javascript,Jszip,我试图通过递归地将文件和子文件夹添加到zip,然后使用AJAX上传zip来上传文件夹。下面是我编写的代码: if(item.isDirectory){ var zip = new JSZip(); create_zip_dir(zip, item, ""); zip.generateAsync({ type: "blob" }).then(function (file) { console.log(file); file =
if(item.isDirectory){
var zip = new JSZip();
create_zip_dir(zip, item, "");
zip.generateAsync({
type: "blob"
}).then(function (file) {
console.log(file);
file = new File([file], item.name + ".zip", {
type: "application/zip"
})
console.log(file);
//console.log(file);
do_upload(file, wd_id);
});
function create_zip_dir(zip, item, path){
if(item.isFile){
var name = path + item.name;
item.file(function(file) {
if(file.name.substring(file.name.lastIndexOf('.')+1) === "docx"){
file = new File([file], file.name, {
type: "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
})
}
zip.file(name, file);
});
} else if(item.isDirectory){
var dirReader = item.createReader();
dirReader.readEntries(function(entries) {
for (var i=0; i<entries.length; i++) {
create_zip_dir(zip, entries[i], path + item.name + "/");
}
});
}
}
上传后,当我检查.zip时,归档文件总是空的。谢谢你的帮助
Blob {size: 22, type: "application/zip"}
size: 22
type: "application/zip"
__proto__: Blob