将 Dropzone 与 Typescript 结合使用

Dar*_*g8r 5 typescript dropzone.js

我有一个使用 dropzone 4.3 并用 Typescript 编写的应用程序。在将其转换为打字稿之前,我们必须在 Dropzone 上设置一个全局变量,一切都很顺利。

Dropzone.autoDiscover = false;
Run Code Online (Sandbox Code Playgroud)

我已经拉入了这些节点包:

    "@types/dropzone": "^4.3.35",
    "dropzone": "4.3.0",
Run Code Online (Sandbox Code Playgroud)

现在,自动发现行给了我这个错误:

Error   TS2686  'Dropzone' refers to a UMD global, but the current file is a module. Consider adding an import instead.
Run Code Online (Sandbox Code Playgroud)

为了解决这个问题,我添加了以下内容:

import * as Dropzone from 'dropzone';
Run Code Online (Sandbox Code Playgroud)

现在,我留下了这个错误:

Error   TS2540  Cannot assign to 'autoDiscover' because it is a constant or a read-only property.   
Run Code Online (Sandbox Code Playgroud)

我哪里出错了?

Jam*_*mes 3

您可以将 autoDiscover 设置为 false,如下所示

import * as Dropzone from "dropzone";    
const dz = Dropzone
dz.autoDiscover = false;
Run Code Online (Sandbox Code Playgroud)

我从这个链接找到了这个https://github.com/zefoy/ngx-dropzone-wrapper/blob/fb39139147f3a6d72bcaff51c3c32e2a54e31c9d/src/lib/dropzone.directive.ts#L60