【问题标题】:How to automatically add types declaration for a library to tsconfig.json in TypeScript 2.0?如何在 TypeScript 2.0 中自动将库的类型声明添加到 tsconfig.json?
【发布时间】:2017-02-01 08:23:30
【问题描述】:

TypeScript 2.0 提供了一种使用 @types 范围内的 npm 包获取类型声明的新方法。

npm i --save-dev @types/lodash

根据this answer,可以通过向tsconfig.jsontypings 属性添加一个字符串来告诉TypeScript 在哪里查找TypeScript 类型声明文件,这也记录在here 中。

{
  "compilerOptions": {
    ...
    "types": ["lodash"]
  }
}

每次安装新类型声明时都必须手动编辑tsconfig.json 似乎很乏味。有没有办法自动做到这一点?

我正在考虑为它编写一个 npm 脚本,但我希望我不必求助于使用 bash 来编辑 JSON 文件。

【问题讨论】:

    标签: typescript typescript2.0


    【解决方案1】:

    如果您使用新的@Types 定义,您可以简单地添加typeRoots 选项并指定文件夹。即"typeRoots": [ "node_modules/@types" ]。它将解析该文件夹并获取您已安装的所有类型,并且您不必添加 /// 参考

    【讨论】:

    • 我正在这样做,但仍然遇到同样的问题。 VSCode 无法识别 jasmine 类型,即使存在 node_modules/@types/jasmine 文件夹,并且 typeRoots 在我的 tsconfig.json 文件中
    • 我也遇到了同样的问题。 VSCode 在github.com/Microsoft/TypeScript/issues/11620 有一个未解决的问题
    猜你喜欢
    • 1970-01-01
    • 2017-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-19
    • 1970-01-01
    • 2019-09-23
    相关资源
    最近更新 更多