【问题标题】:typescript type definition for global libraries全局库的打字稿类型定义
【发布时间】:2018-12-03 06:02:23
【问题描述】:

我对 ts 中的类型有疑问。

我在 index.html 文件中加载了一些全局库 我想在我的 main.ts 中使用它们

我无法从 npm 安装库来使用它的内置定义,@types 包中没有它的定义。

如何引入我自己的 .d.ts 文件作为它的定义?

我试过/// <reference path="path/to/file/myModule.d.ts"/>,在那个文件中我有这样的东西

declare namespace X {
...
...
}

但是在 main.ts 文件中我想使用 X.type 作为类型时会出错

TS2503:找不到命名空间“X”。

我该怎么办?

【问题讨论】:

  • 这份文件对我有帮助:link 和这个:link

标签: typescript typescript-typings


【解决方案1】:

您可以使用tsconfig.json 中的类型定义设置自己的目录,例如。 typings目录:

{
   "compilerOptions": {
       "typeRoots" : ["./node_modules/@types", "./typings"]
   }
}

如果您在配置中设置typeRoots 属性,则不会考虑node_modules/@types(默认情况下),因此您应该在数组中设置这两个

【讨论】:

  • 我应该把自己的声明文件放在哪里才能被识别?我已经创建了类型目录并将我的声明文件添加到其中。但它没有被识别?我应该以某种方式导入它吗?
  • 但是你把我上面描述的那个选项放到tsconfig.json中了吗?
猜你喜欢
  • 2017-08-16
  • 2020-12-10
  • 2020-10-27
  • 2020-05-07
  • 2019-06-15
  • 2018-01-16
  • 2020-07-07
  • 2019-02-10
  • 2016-07-07
相关资源
最近更新 更多