dropzone.js .removeAllFiles()不会删除模拟文件

时间:2014-04-29 15:42:45

标签: dropzone.js

我注意到在收到" mock"的dropzone实例上调用.removeAllFiles()时。使用所示技术here的文件实际上没有所需的效果(模拟文件仍然存在)。

1 个答案:

答案 0 :(得分:16)

我也有同样的问题。 我认为这是因为从服务器添加的文件没有进入文件数组,当你调用removeAllFiles()时,它将无法工作,因为它不在文件数组中。
因此,显而易见的解决方案是将它们添加到文件数组中,它看起来像这样

$(function() {
    var mockFile = { name: "banner2.jpg", size: 12345 };
    var myDropzone = new Dropzone("#my-awesome-dropzone");
    myDropzone.options.addedfile.call(myDropzone, mockFile);
    myDropzone.files.push(mockFile); // here you add them into the files array
    myDropzone.options.thumbnail.call(myDropzone, mockFile,
        "http://localhost/test/drop/uploads/banner2.jpg");
});

现在您可以在某些事件中使用myDropzone.removeAllFiles();,从服务器添加的文件也将从dropzone中删除。

注意:请记住使用上述代码时。如果你从服务器端删除文件时从服务器端删除文件,那么从dropzone删除文件后,服​​务器上的所有文件都将被删除。