我正在使用(拖放)上传多个图像dropzone.js
在这里我保留了autoProcessQueue
to false
进行自定义上传。
现在我正在寻找如何获取我选择上传的队列列表。原因是我需要一个接一个地上传文件,以便保持顺序。我可以保留选择parallelUploads
to 1
以便文件一个接一个地上传,但这里的问题是第二个文件不等待前一个文件的响应。
因此,意味着在上传服务器的过程中,正在处理第二个文件,如果它的大小小于第一个文件,则它会在前一个文件之前先上传。
请问这个有什么答案吗?
我最近一直在与dropzonejs http://www.dropzonejs.com/ and 光滑网格 https://github.com/mleibman/SlickGrid/wiki我遇到了文件排序挑战以及在所有文件上传之前触发的事件。
当您使用默认值时,它将分离所有上传,因此要允许多个文件,您需要设置uploadMultiple
范围。
您可以通过设置来控制支持的并行上传数量paralellUploads
范围。我好像记得它默认是两个。诀窍是在处理响应之前等待所有上传完成。
我知道您希望保留要上传的文件的顺序,但我真的认为您想按顺序处理响应。强制它们按顺序上传会消除任何并行上传的优势。
我添加了两个处理程序
一个用于在响应完成时保存响应(每个并行上传块都会生成以下之一
myDropzone.on("successmultiple", function(file,response) {
save_responses(response);
});
并在完成后处理所有这些。
myDropzone.on("completemultiple", function() {
if (this.getQueuedFiles().length == 0 &&
this.getUploadingFiles().length == 0) {
process_responses(this.getAcceptedFiles());
}
});
如果您怀疑文件的顺序不正确,您可以随时检查 event.dataTransfer.files 数组
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)