在打字稿中覆盖或隐藏“文件”

Overriding or shadowing `File` in Typescript

我正在使用打字稿为一个程序编写扩展脚本,该程序有一些对象,如文件和文本,它们在 lib.d.ts 中有重复的定义。

因此,这样的定义

declare File(x: string): object;

将导致重复标识符错误。有没有办法选择性地覆盖或隐藏库定义,或者用我自己的定义替换它们?

Is there a way to selectively override or shadow the library definitions or otherwise replace them with my own?

两个选项:

使用你自己的库

  • 使用 nolib tsconfig 选项并将您的库添加到您的 src。

不要使用全局变量

例如不要调用您的变量 Filewindowdocumentlocation 或其他已知的全局变量,例如在节点 processglobal

偏好

第二个选项当然是首选。这是使用 JavaScript.

的成本