typescript 【类型脚本】:在'globalThis'变量上键入类

4xrmg8kj  于 2022-11-26  发布在  TypeScript
关注(0)|答案(1)|浏览(131)

我尝试将类型定义添加到globalThis上的变量中,该变量应该作为一个类。在JavaScript中:

globalThis.X = class {
  ...
}

我在globalThis对象上添加类型定义时遇到问题,无法使其正常工作。
第一次
请参阅codesandbox以了解复制示例。

zsbz8rwp

zsbz8rwp1#

在TypeScript中,通过在函数定义之前添加new,它将充当构造函数。在您的示例中:

declare global {
  module globalThis {
    interface XType {
      value: number;
    }
    var X: new (x?: number, y?: number) => XType;
  }
}

然后,当您尝试使用new globalThis.X()时,您应该获得一个类型安全变量作为XType类型的输出。

相关问题