Typescript 如何为我的项目提供全局库引用?

Typescript 如何为我的项目提供全局库引用?,typescript,Typescript,我正在使用Typescript启动一个新项目。我更喜欢使用依赖项注入,但这并不妨碍我为每个注入的值导入类型。在我的项目中,我希望隐式提供类型。我一直无法找到使全局类型成为可能的方法 例如: export class Greeter { @Inject('logger') logger: Logger; // Errors because my logger type is not available here hello() { this.logger.info('Hell

我正在使用Typescript启动一个新项目。我更喜欢使用依赖项注入,但这并不妨碍我为每个注入的值导入类型。在我的项目中,我希望隐式提供类型。我一直无法找到使全局类型成为可能的方法

例如:

export class Greeter {
  @Inject('logger')
  logger: Logger; // Errors because my logger type is not available here

  hello() {
    this.logger.info('Hello world');
  }
}

如何使
记录器
类型可用于我的所有文件,而不显式引用或导入每个文件中的类型?

您可以使用所需的类型定义创建一个.d.ts文件,并将其包含在
tsconfig.json
文件
数组中。

您可以使用该类型创建一个.d.ts文件您想要的定义,并将其包含在
tsconfig.json
文件
数组中。

这实际上不起作用。我尝试在我的
tsconfig.json
文件中添加:
“node\u modules/@types/winston/index.d.ts”
。使用该文件中的任何导出接口(例如,
LoggerInstance
)会导致编译“错误TS2304:找不到名称”LoggerInstance“。这实际上不起作用。我尝试在我的
tsconfig.json
文件中添加:
“node\u modules/@types/winston/index.d.ts”
。使用该文件中的任何导出接口(例如,
LoggerInstance
)会导致编译“错误TS2304:找不到名称”LoggerInstance“。