我正在使用流类型的定义文件,但需要添加插件的定义,并且看不到如何执行此操作?

假设一个npm模块有一个外部流类型的定义文件,看起来像这样:

declare class LibStatic {
  func1(): string;
}

declare module 'lib' {
  declare var exports: LibStatic;
}

declare var globalLib: LibStatic;


如果将func2需要的新方法动态添加到LibStatic,我将如何自定义外部流程类型的定义文件?

最佳答案

听起来您好像在做Bad Thing™。避免在事后更改类型,否则您将陷入混乱,并失去静态类型检查的好处。话虽如此,您可以按照以下方式解决。

创建您自己的库,该库重新导出LibStatic中的所有内容。您可以在此处添加新方法,并完全控制导出的类型。现在,在以前使用LibStatic的任何地方使用自己的库。

09-20 23:53