忽略打字稿过载错误
Ignore typescript overload error
我在编译 Typescript 项目时遇到以下错误
Overload signatures must all be ambient or non-ambient.
此处出现错误
function setTimeout(callback: any, time: any = 1, timeInSeconds: boolean = false): void
当然,我用谷歌搜索发现这是由我的函数名称引起的 setTimeout
因为 setTimeout 已经被浏览器保留 api 并且打字稿想要告诉我我不能重载它.
我在这里提出问题的原因是我的代码永远不会 运行 在任何浏览器中。它在我自己使用 C# 和 Javascript.NET 创建的类节点环境中变为 运行。它并不重要,因为代码仍然可以编译并完美运行,但这些错误越来越让我烦恼。所以我的问题是我能以某种方式忽略这个错误,或者我能更好地指定编译器认为我拥有的库吗?
快速浏览
Program Files (x86)\Microsoft SDKs\TypeScript.0
向我展示了所有浏览器 api 都在
中定义
Program Files (x86)\Microsoft SDKs\TypeScript.0\lib.d.ts
因为我注释掉了
declare function setTimeout(handler: any, timeout?: any, ...args: any[]): number;
它编译没有错误
我在编译 Typescript 项目时遇到以下错误
Overload signatures must all be ambient or non-ambient.
此处出现错误
function setTimeout(callback: any, time: any = 1, timeInSeconds: boolean = false): void
当然,我用谷歌搜索发现这是由我的函数名称引起的 setTimeout
因为 setTimeout 已经被浏览器保留 api 并且打字稿想要告诉我我不能重载它.
我在这里提出问题的原因是我的代码永远不会 运行 在任何浏览器中。它在我自己使用 C# 和 Javascript.NET 创建的类节点环境中变为 运行。它并不重要,因为代码仍然可以编译并完美运行,但这些错误越来越让我烦恼。所以我的问题是我能以某种方式忽略这个错误,或者我能更好地指定编译器认为我拥有的库吗?
快速浏览
Program Files (x86)\Microsoft SDKs\TypeScript.0
向我展示了所有浏览器 api 都在
中定义Program Files (x86)\Microsoft SDKs\TypeScript.0\lib.d.ts
因为我注释掉了
declare function setTimeout(handler: any, timeout?: any, ...args: any[]): number;
它编译没有错误