【发布时间】:2019-07-25 15:40:16
【问题描述】:
可以通过tsconfig.json 配置打字稿编译器。这也提供了带有typeRoots 键的settings for discovering type definition files。
默认情况下:
默认情况下,所有可见的“@types”包都包含在您的 汇编。任何封闭文件夹的 node_modules/@types 中的包 被认为是可见的;具体来说,这意味着包内 ./node_modules/@types/, ../node_modules/@types/, ../../node_modules/@types/,等等。
如果指定了 typeRoots,那么只有 typeRoots 下的包会被 包括
许多包在单独的@types/<package-name> 包中提供其类型定义。 Jquery 例如。
同时,有些包附带了捆绑的类型定义,Firebase 就是这样做的。
为什么 typescript 编译器可以在不编辑 typeRoots 设置的情况下选择 Firebase 定义?这些定义不在@types 中,据我所知,默认情况下不应使用。
【问题讨论】:
标签: typescript npm typescript-definitions