如何在Angular2中使用第三方打字稿插件?

时间:2016-12-14 17:56:10

标签: angular typescript typescript-typings

我是angular2的新手,但是javascript开发相当成熟。我在之前的项目中使用了很多jQuery插件。我想在我的新angular2项目中使用它们。

我已经知道的事情:

  1. 我必须使用打字稿定义文件才能使用它们。
  2. 但我想知道的是

    1. 将它们放在angular2项目中的位置。
    2. 我应该使用npm下载它们,以便将它们放入node_modules 文件夹中。
    3. 我应该在打字文件夹中手动复制它们。
    4. 我尝试了第2点,但未能将其作为参考。任何人都可以告诉我如何导入第三方打字稿插件并将其导入我的angular2组件。什么是最佳做法?

      其次,typings文件夹的用途是什么?

1 个答案:

答案 0 :(得分:1)

有很多方法可以做到这一点。然而,现代方法是使用node_modules文件夹中的类型。

为了做到这一点(如果库本身不提供像Angular那样的类型),你需要安装typescript定义文件:

npm install @types/mylibrarytoimport --save-dev

这将采用https://github.com/DefinitelyTyped/DefinitelyTyped中的类型定义。现在有趣的部分:如何在您的项目中使用它。根据{{​​3}},您不需要做任何其他事情:它只是有效。

在这种方式成为可能之前,有一个typings库试图解决问题,直到他们意识到他们实现了第二个npm,所以他们只是转移到现有的。幸运的是,NPM增加了对范围包的支持,这使得它成为可能。

typings之前,没有真正的方法可以自动获取类型定义,因此每个人都被迫下载并手动跟踪更改。