我们正在一个大型 Angular 项目中使用制表表,我似乎找不到可用的定义文件。
我已经尝试了 https://www.npmjs.com/package/@types/tabulator-tables 似乎更新等,但它导致我的 IDE 中出现很多错误,因此项目将无法编译。即使在我添加类型包之前编译有效,也有很多错误。添加许多@ts忽略的评论是毫无意义和不切实际的。
请注意 - 我注意到使用与我的项目(v4.2.2(中安装的类型定义包的相同版本。我假设问题出在自动生成上述软件包上 - 因此生成的 .d.ts 文件不可用。
如果我错了,请纠正我,任何关于集成定义文件的帮助将不胜感激。啪!
我在 Angular 项目上添加 TypeScript 类型时遇到了类似的问题,这是我所做的:
- 将制表器封装在 Angular 组件中(在我的例子中为 data-grid.component.ts(;
npm install @types/tabulator-tables
- 创建文件data-grid.component.d.ts:
declare module 'tabulator-tables' {
export = Tabulator;
}
- 关键:从文件中删除
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.json
或tsconfig.app.json
(取决于您的项目(和tsconfig.spec.ts
(需要单元测试(的内部compilerOptions
"allowSyntheticDefaultImports": true
。
在编辑 tsconfig 后卸载并重新开始非常重要ng serve
。
之后,所有键入都应该有效。以防万一我创建了简单的 Angular 示例,希望这有所帮助。