在 TypeScript 中发出"Unreachable code detected"编译警告而不是错误?



在Typescript中,当存在无法实现的代码时,编译器会默认生成错误:

error TS7027: Unreachable code detected.

我可以通过使用编译器选项allowUnreachableCodetrue避免它,但是我可以以某种方式将其更改为警告吗?

我仍然希望知道无法实现的代码。在开发和调试期间,我有时会使用if (false)暂时删除一些功能,这比评论代码要好,尤其是当代码本身包含注释时。

在C#中,无法到达的代码会生成警告(我可以通过其他选项将其视为错误(,在我看来,这是更好的处理方法。

在临时删除功能的特定情况下(我认为这是一个人想要想要具有无法到达的代码的主要情况(,写作

if( <any>false ) {
  // unused code goes here
}

将防止打字稿编译器抱怨,为运行时ecmascript实现提供了优化代码的很大机会。

或者,

if( 0 ) {
  // unused code goes here
}

将被打字稿语言接受,但仍会触发tslint的"意外常数"警告。

截至写作时的答案是"否",不能将其发出警告;正如您所说,它是"错误"或"无"。存在此GitHub问题是为了使错误被配置为警告,这将允许将其引入警告。希望它将很快实施。

最新更新