// @ts-ignore注释使TypeScript编译器可以忽略它下面的行。

你怎么能用TypeScript忽略一整块代码呢?


当前回答

你不能。这在TypeScript中是一个悬而未决的问题。

其他回答

您可以使用// @ts-expect-error来抑制一行上的错误,也可以用于多行,这有点麻烦,但这是目前您可以得到的最接近的东西

https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-9.html#-ts-expect-error-comments

但是等等

如果你在没有错误的行上使用// @ts-expect-error,它将导致错误未使用的'@ts-expect-error'指令。

所以请确保只在有类型错误的行上使用它

如果你使用的是prettier,你可以添加//prettier-ignore,用于那些足够小的代码,这样就可以把prettier转换成多行

你不能。这在TypeScript中是一个悬而未决的问题。

这将忽略下一行,并且只忽略下一行。

// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore

你不能。

作为一种解决方法,您可以在文件顶部使用// @ts-nocheck注释来禁用该文件的类型检查:https://devblogs.microsoft.com/typescript/announcing-typescript-3-7-beta/

因此,要禁用对一个块(函数、类等)的检查,可以将它移动到它自己的文件中,然后使用上面的注释/标记。(当然,这并不像基于块的禁用那样灵活,但这是目前可用的最佳选择。)