有人'types'定义文件工作吗?



我们正在一个大型 Angular 项目中使用制表表,我似乎找不到可用的定义文件。

我已经尝试了 https://www.npmjs.com/package/@types/tabulator-tables 似乎更新等,但它导致我的 IDE 中出现很多错误,因此项目将无法编译。即使在我添加类型包之前编译有效,也有很多错误。添加许多@ts忽略的评论是毫无意义和不切实际的。

请注意 - 我注意到使用与我的项目(v4.2.2(中安装的类型定义包的相同版本。我假设问题出在自动生成上述软件包上 - 因此生成的 .d.ts 文件不可用。

如果我错了,请纠正我,任何关于集成定义文件的帮助将不胜感激。啪!

我在 Angular 项目上添加 TypeScript 类型时遇到了类似的问题,这是我所做的:

  1. 将制表器封装在 Angular 组件中(在我的例子中为 data-grid.component.ts(;
  2. npm install @types/tabulator-tables
  3. 创建文件data-grid.component.d.ts:
declare module 'tabulator-tables' {
export = Tabulator;
}
  1. 关键:从文件中删除import Tabulator from 'tabulator-tables'data-grid.component.ts

它奏效了。

完整的 TypeScript Typings 可以在@types/tabulator-tablesnpm 包中找到

npm install @types/tabulator-tables

有关如何在项目中使用类型的示例,请参见此处

语言文档包含有关可用键入

的详细信息

我已经为这个问题写了一个答案,在我看来还不够好,但有些人投票认为是正确的,所以我决定保持原样并写一个新的。

为制表器添加类型存在一些问题,这是因为类型注释未导出,但有一种方法可以使用它们。

安装制表器(npm install --save @types/tabulator-tables(的类型后,您应该在目录src中打开(或创建它,如果不存在(文件index.d.ts,并将以下代码复制到其中:

declare module 'tabulator-tables' {
export = Tabulator;
}

您需要确保在文件tsconfig.jsontsconfig.app.json(取决于您的项目(和tsconfig.spec.ts(需要单元测试(的内部compilerOptions"allowSyntheticDefaultImports": true

编辑 tsconfig 后卸载并重新开始非常重要ng serve

之后,所有键入都应该有效。以防万一我创建了简单的 Angular 示例,希望这有所帮助。

最新更新