Dropzone已经附加在Angular 2或Typescript

时间:2017-03-16 13:31:29

标签: angular typescript dropzone.js

我在Angular 2 Component中有一个以编程方式创建的Dropzone,我希望将其附加到 body ,这样我的整个网站就是" dropzone"上传。

每次实例化组件时,它都会尝试附加dropzone。

this.dropzone = new Dropzone('body', this.createOptions());

我第一次执行此操作会有效,但只要我重新导航到组件,我就会得到 Dropzone已经附加。错误。

在搜索解决方案时,我注意到了使用Dropzone.autoDiscover = false

的选项

但是在尝试这个时我得到了一个编译错误的Typescript:赋值表达式的左侧不能是常量或只读属性。

所以我的问题是:我怎样才能将掉落区从身体上脱下并在必要时重新贴上?或者我该如何继续使用此功能?

我正在使用来自https://www.npmjs.com/package/@types/dropzone版本4.3.34

的@ types / dropzone类型

由于

2 个答案:

答案 0 :(得分:1)

我使用了ngx-dropzone-wrapper,你可以像这样绑定你的dropzone

<div class="upload-area"
     #dz=dz
     [dropzone]="dzImageConfig"
     (error)="onUploadError($event)"
     (success)="onUploadSuccess($event)"
     (sending)="onSending($event)"
     (removedFile)="onRemovedFile($event)">

</div>

您不必使用此库绑定到变量,但您可以。

编辑:确保回调是驼峰式的。例如。 “removedFile”不是“removedfile” https://github.com/zefoy/ngx-dropzone-wrapper/blob/master/README.md “事件名称是骆驼案(不是小写)。”

答案 1 :(得分:0)

Dropzone.instances有dropzone附加实例。你可以检查一下。