Make"检测到无法访问的代码"在TypeScript中编译警告而不是错误?

时间:2017-06-07 08:43:36

标签: typescript

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

error TS7027: Unreachable code detected.

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

我仍然希望了解无法访问的代码。在开发和调试期间,我有时会使用if (false)来临时删除一些功能,这比注释代码更好,特别是当代码本身包含注释时。

在C#中,无法访问的代码会生成警告(我可以将其视为其他选项的错误),这似乎是我处理它的更好方法。

2 个答案:

答案 0 :(得分:5)

在暂时删除功能的特定情况下(我认为这是希望拥有无法访问的代码的主要情况),写作

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

将阻止TypeScript编译器抱怨,为运行时ECMAScript实现提供了很好的优化代码的机会。

可替换地,

if( 0 ) {
  // unused code goes here
}
TypeScript语言将接受

,但仍会从tslint触发“意外的持续条件”警告。

答案 1 :(得分:1)

截至撰写本文时的答案是&#34; no&#34;,它不能成为警告;如你所说,它是&#34;错误&#34;或&#34;没什么&#34;。存在This Github issue以允许将错误配置为警告,这将允许将其作为警告。希望它能尽快实施。