2014-02-19 77 views
8

以編程方式刪除以編程方式添加到Dropzone的文件時存在未知問題。 這裏是我的代碼不工作:從Dropzone.js中刪除所有手動添加的文件?

// constructor - OK 
docsDropzone = new Dropzone("#docsUpload", { 
    url: uploadUrl, 
    addRemoveLinks: true, 
    init: function() { 
     this.on('removedfile', removedFileCallback); 
    } 
}); 

// add file - OK 
var mockFile = { name: 'test.jpg', size: 0 }; 
docsDropzone.emit("addedfile", mockFile); 
docsDropzone.emit("thumbnail", mockFile, 'test.jpg'); 

// remove files - NOT OK 
docsDropzone.removeAllFiles(true); 

回答

18

addedfile功能不將文件添加到dropzone.files 所以它必須手動添加:

// add file - OK 
var mockFile = { name: 'test.jpg', size: 0, status: 'success' }; 
docsDropzone.emit("addedfile", mockFile); 
docsDropzone.emit("thumbnail", mockFile, 'test.jpg'); 
docsDropzone.files.push(mockFile); // file must be added manually 

// remove files - NOW OK 
docsDropzone.removeAllFiles(true); 
+2

感謝「推」未記錄的聲明在dropzone! –

+1

優秀的答案。我一直在尋找一種很長時間去除發射的縮略圖的方法,現在它能正常工作!感謝您節省一天的時間。 – Maximus