我正在使用Typescript开发Angular 2项目。我希望能够使用select2,而且我没有看到任何稳定的功能丰富的插件,相当于select2。但是我在DefinitelyTyped项目中遇到了types/select2
。我不确定如何在我的项目中使用它们。我也找不到其他DefinitelyTyped库的示例。我是TS和Angular 2的新手。有人可以提供我应该如何使用它的指示吗?
我知道我可以使用我的package.json包含库但不知道如何在组件中使用。
答案 0 :(得分:4)
安装了@ types / select2后,它允许typescript编译器进行静态类型检查,以确保正确调用Select2库。它不会改变您使用public function getFile() {
// disable the default layout for the view
$this->viewBuilder()->layout(false);
$path = '/file/file.txt';
$this->response->file($path, array('download' => true));
return $this->response;
}
的方式 - 您仍然需要安装select2
库并像没有类型检查一样使用它。
对于外部依赖项(如jQuery或Select2),您应该安装相应的类型定义文件,以便typescript编译器可以在编译时解析外部类型。这比声明Select2
类型(即any
)
确保您也安装jQuery类型:
declare var $: any
这将在npm install @types/jquery
下安装类型定义。缺省情况下,typescript编译器将解析node_modules/@types/jQuery
文件夹中的类型。
对于TypeScript NodeJS包,您可以在编译步骤中生成类型定义文件,并在node_modules/@types
文件的index.d.ts
属性中指定typings
。在这种情况下,您不一定需要将类型定义导出到package.json
。
答案 1 :(得分:0)
我有一个类似的问题并通过导入修复它:
/Users/$USER/Library/Application Support/MyCompany/Plugins
我之前安装的:
import 'select2';
完成后,您可以像往常一样通过jquery使用库。
答案 2 :(得分:0)
我通过
解决了这个问题import { Select2} from 'select2'
并安装:
npm install @types/select2@4.0.48
现在我必须进行测试,但打字稿斜度不再出错