如何设置Dropzone.js同时上传多个和分块上传?

How to set up Dropzone.js to upload multiple and upload in chunks at the same time?

我正在尝试设置 Dropzone.js 以同时处理多个文件,但也以 1mb 的块上传每个文件。我似乎找不到合适的 DZ 配置。

当我将 "uploadMultiple: true" 添加到 DZ 的工作分块实现时,Chrome 抛出此错误:"Uncaught Error: You cannot set both: uploadMultiple and chunking."

问题: "autoProcessQueue" 设置为 "false" 因为我只想在用户点击 "submit" 按钮时进行处理。即使 "uploadMultiple" 未设置为 true,只要队列为 auto-processed.

,Dropzone 将上传多个文件(可能是连续而不是同时)

解决方案: 一旦文件的所有块都上传完毕,Dropzone.js 调用 "chunksUploaded"。在第一个文件成功上传其所有块后,将 "autoProcessQueue" 选项重置为 "true." 后 "queueComplete," 将其设置回 "false" 以准备下一次上传。

在此处查看答案以了解 chunksUploaded 回调,在使用它连接上传后的块的上下文中:

查看此线程的末尾以转动 on/off autoProcessQueue:https://github.com/enyo/dropzone/issues/462

Javascript 示例片段:

(我删除了所有 Dropzone 和 Ajax 选项以突出显示相关部分)

var myDropzone = new Dropzone(target, {
  chunksUploaded: function(file, done) {
    // ajax below posts to a script that merges the uploaded chunks of the current file
    $.ajax({
        success: function (data) {
          myDropzone.options.autoProcessQueue = true;
          done();
        }
     });
  }
});

myDropzone.on("queuecomplete", function() {
  myDropzone.options.autoProcessQueue = false;
});