我正在使用Typescript开发Angular 2项目。我希望能够使用select2,我没有看到任何稳定的功能丰富的插件等同于select2。但是我在types/select2
项目中遇到了DefinitelyTyped。我不确定如何在我的项目中使用它们。我也找不到其他DefinitelyTyped库的示例。我是TS和Angular 2的新手。有人能指出我应该如何使用它吗?
我知道我可以使用我的package.json包含库但不知道如何在组件中使用。
安装了@ types / select2后,它允许typescript编译器进行静态类型检查,以确保正确调用Select2库。它不会改变你使用select2
的方式 - 你仍然需要安装Select2
库并像没有类型检查那样使用它。
对于外部依赖项(如jQuery或Select2),您应该安装相应的类型定义文件,以便typescript编译器可以在编译时解析外部类型。这比声明any
类型(即declare var $: any
)更受欢迎
确保你也安装了jQuery类型:
npm install @types/jquery
这将在node_modules/@types/jQuery
下安装类型定义。缺省情况下,typescript编译器将解析node_modules/@types
文件夹中的类型。
对于TypeScript NodeJS包,您可以在编译步骤中生成类型定义文件,并在index.d.ts
文件的typings
属性中指定package.json
。在这种情况下,您不一定需要将类型定义导出到node_modules/@types
。
我有一个类似的问题并通过导入修复它:
import 'select2';
我之前安装的:
npm install select2 --save
完成后,您可以像往常一样通过jquery使用库。