我正在通过 ngx-dropzone-wrapper 将 Dropzone 与 Angular 结合使用。
我没有直接从 Dropzone 使用上传,我只是让它收集文件,然后在我的代码中处理它们。
我需要将文件数限制为 1。所以我设置了 config.maxFiles = 1
.事实上,现在文件打开对话框只允许选择单个文件。但问题是 Dropzone 不会替换以前的文件!相反,它使用accepted=false(很可能,因为达到了maxFiles)标志将新文件添加到其文件集合中。那不是我所期望的。我需要config.maxFiles = 1
删除旧文件并添加新文件并接受它。
所以,我应该调用 removeAllFiles(true)
来支持我的要求。但是我找不到任何在用户选择文件之后和 Dropzone 尝试处理它之前触发的事件处理程序。
那么,我如何实现以下要求:
?
最佳答案
你需要告诉 dropzone 放弃第一张图片。您需要 dropzone 选项中的 maxfilesexceeded 功能。
maxfilesexceeded: function (files) {
this.removeAllFiles();
this.addFile(files);
},
它在内部工作,如果您的 maxfiles 是一个,并且您正在添加第二个,则第一个将被丢弃,因为它超出了它的限制
关于angular - 如何替换以前选择的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59898774/