如何从通过kendoUpload上传的zip文件中删除文件?使用jszip

时间:2015-03-25 14:42:16

标签: javascript kendo-ui kendo-upload jszip

用户上传压缩文件后,我想在通过网络发送之前从中删除images文件夹。我使用kendo进行上传,现有功能正常。我只想添加删除图像部分。这就是我到目前为止所做的:

   function onSelect(e) {
        var file = e.files[0];
        if (endsWith(file.name, '.eds')) {
            var contents = e.target.result;
            var jszip = new JSZip(contents);
            jszip.remove("apldbio/sds/images_barcode");
            fileToSend = jszip.generate({type: "base64", compression: "DEFLATE"});
        }
        e.files[0] = fileToSend;
        openProgressDialog(e.files.length); //this is existing code, works fine
    }
事件target.result中似乎不存在

e。从那时起,没有任何工作正常。 e可能应该在FileReader对象的onload()中使用,(如herehere所示)但我不知道如何使用FileReader实现我的目的,使用kendo上传。

编辑:
我做了一些阅读,现在我正在使用FileReader:

    var reader = new FileReader();
    reader.onload = function (e) {
        // do the jszip stuff here with e.target.result
    };
    reader.onerror = function (e) {
        console.error(e);
    };  
    reader.readAsArrayBuffer(file);

注意:file = e.files[0]与第一个代码块一样。 尽管如此,我得到错误:

Failed to execute 'readAsArrayBuffer' on 'FileReader': parameter 1 is not of type 'Blob'.

0 个答案:

没有答案