打字混乱?

Typings confusion?

我正在尝试将第三方 .js 库 (gridstack.js) 实施到我的 Angular 项目中。但是我对打字文件 (.d.ts) 是如何 used/imported 感到困惑。

到目前为止,我的方法是通过 npm 安装 gridstack 以及它的类型。然后我尝试将它导入我的 component.ts。 (import * as gridstack from 'gridstack'),但 index.d.ts 未被识别为模块。我想这是有道理的,因为索引中没有导出语句。d.ts 文件,但也许我错了?

所以我的问题是,如何在 DOM 和 component.ts 中访问 gridstack?也许有人可以澄清,如果每次输入的设置都相同,或者它是否取决于您尝试使用的库。我觉得我已经看到了五十种不同的方法来做到这一点,每一次我都变得更加困惑。

无需在组件文件中导入类型,您应该通过 npm 安装类型,然后在您的 tsconfig.json 文件中定义它们,然后这些类型将在您的所有组件文件中可用

tsconfig.json

"compilerOptions": {
    "types": [ "node", "gridstack" ]
}

确保您在 node_modules/@types 下输入了您的输入,或者您可以使用 'typeRoots' 定义您的输入路径(如果它在其他地方定义)

检查这个 !