跳至内容

typescript/prefer-ts-expect-error 吹毛求疵

🛠️ 此规则可用于自动修复。

其作用

强制使用 @ts-expect-eror,而不是 @ts-ignore。

为什么这样做很糟糕?

TypeScript 允许你在出错行之前放置一个以 @ts-ignore 或 @ts-expect-error 开头的注释,以消除该行中的所有错误。这两个指令的工作方式相同,但例外的一点是,如果 @ts-expect-error 放在没有出错的行之前,它会导致类型错误。

这意味着很容易忘记 @ts-ignores,即使在它们要消除的错误被修复后,它们仍会保留在代码中。这是很危险的,因为如果该行出现一个新错误,则会被忘记的 @ts-ignore 消除,从而会被忽略。

示例

ts
// @ts-ignore
const str: string = 1;

/**
 * Explaining comment
 *
 * @ts-ignore */
const multiLine: number = "value";

参考资料

根据麻省理工学院许可证发布。