【发布时间】:2017-02-23 16:31:34
【问题描述】:
我正在使用 angular2-dropzone-wrapper 在我的 Angular2 应用程序中使用 Dropzone。
我希望我的用户能够一次上传丢失的文件,但不能一次将所有文件发送到服务器。
我们曾经为此使用 PrimeNG,但他们一次发送所有内容。
我读过 Dropzone 会一一发送文件。我已经尝试了几个配置选项,但我无法将所有选定的文件都发送到服务器。他们中的大多数都被丢弃了,但我不知道为什么。我正在收听几个事件,但没有发送任何内容。
我的首选配置是一次将 5 个文件发送到服务器,直到发送完所有文件。
我知道我需要 uploadMultiple 和 parallelUploads 属性,但我无法让它工作。
如果上传所有文件需要一些时间不是问题,但是当看似随机的文件被跳过时,这是一个主要问题。 我不确定这是 Dropzone 还是 Angular2 包装器的问题,但希望这里有人知道答案。
这是我的 HTML:
<dropzone [config]="dropZoneConfig"
(error)="onDropZoneUploadError($event)"
(sendingmultiple)="onDropZoneSendingMultiple($event)"
(queuecomplete)="onDropZoneQueueComplete($event)"
(maxfilesreached)="onDropZoneMaxfilesReached($event)"
(maxfilesexceeded)="onDropZoneMaxfilesExceeded"
(totaluploadprogress)="onDropZoneTotalUploadProgress"></dropzone>
这是我的 ts:
this.dropZoneConfig = {
server: this.url,
maxFilesize: 200, // MB
maxFiles: 500,
acceptedFiles: ".xml",
parallelUploads: 5,
uploadMultiple: true,
createImageThumbnails: false,
autoProcessQueue: true,
autoReset: 500,
addRemoveLinks: false,
headers: { "Authorization": "Bearer " + sessionStorage.getItem("AccessToken") }
};
非常感谢任何帮助。
【问题讨论】:
-
使用自动重置会导致所有文件被取消,即使它们尚未上传。所以我需要弄清楚如何在 Angular2 打字稿中调用 removeFiles() 方法。
标签: angular dropzone.js