有没有办法将TypeScript tsc
编译器中的TS2307错误静音?
由于我们的代码库中存在许多 TS2307错误,因此很难发现真实/新错误和警告。
更新:
当外部模块import
编辑而没有其类型定义.d.ts
时,会发生此错误。
我了解tsd
,但对于我们使用的许多库,不存在类型定义。
答案 0 :(得分:12)
不,没有办法指示编译器抑制TS2307。正是出于你所描述的原因,对它进行了一些讨论。对于大型项目,这成为进入的巨大障碍。
详细信息:Making JavaScript to TypeScript migration easier : Suppress errors
在这里:Find a way to suppress the errors generated by importing modules
您可以做的是在构建过程中添加一个过滤错误消息的步骤。当然,这取决于你如何进行构建。
答案 1 :(得分:8)
从TypeScript 2.6(于2017年10月31日发布)开始,现在在目标行之前有a way to ignore all errors from a specific line个使用// @ts-ignore
注释。
The mendtioned documentation足够简洁,但要概括一下:
// @ts-ignore
const s : string = false
禁用此行的错误报告。
但是,仅在修复错误或使用(x as any)
之类的hack时,此方法才是万不得已的方法,这比丢失一行的所有类型检查要麻烦得多。
关于指定某些错误,我们讨论了here, in Design Meeting Notes (2/16/2018) and further comments的当前(2018年中)状态,基本上是
“还没有结论 ”
强烈反对引入这种微调。
答案 2 :(得分:-1)
您可能会发现tsc-silent
有用。尽管忽略错误,但您必须be careful并记住错误代码会更改,有时在伞状错误下报告了许多不同的问题。