我正在使用Dropzonejs
在表單中添加圖像上傳功能,因爲我在表格中有各種其他字段,所以我將autoProcessQueue
設置爲false
,然後點擊表單的提交按鈕進行處理,如下所示。在Dropzone中添加現有圖像文件
Dropzone.options.portfolioForm = {
url: "/user/portfolio/save",
previewsContainer: ".dropzone-previews",
uploadMultiple: true,
parallelUploads: 8,
autoProcessQueue: false,
autoDiscover: false,
addRemoveLinks: true,
maxFiles: 8,
init: function() {
var myDropzone = this;
this.element.querySelector("button[type=submit]").addEventListener("click", function(e) {
e.preventDefault();
e.stopPropagation();
myDropzone.processQueue();
});
}
}
這工作正常,並允許我處理表單提交時發送的所有圖像。不過,我也希望能夠在用戶再次編輯表單時看到已經上傳的圖像。所以我從Dropzone Wiki中瀏覽了以下帖子。 https://github.com/enyo/dropzone/wiki/FAQ#how-to-show-files-already-stored-on-server
它填充dropzone-preview
區域與現有的圖像,但它不會發送現有圖像與表單提交這次。我想這是因爲這些圖像不是在queue
中添加的,但是如果是這樣的話,那麼如何在服務器端進行更新,如果現有圖像被用戶刪除?
另外,什麼是更好的方法,再次添加已添加的圖像queue
或只是發送刪除的文件的信息?
謝謝Teppic,是的,我不得不這樣做。 :) – lalit
Litte的改進:將「accepted:true」 添加到mockFile中,因此Dropzone將文件識別爲正確上傳。這使例如可上傳文件的限制('maxFiles') – user1825294
謝謝:)像魅力一樣工作 – mdev