为什么
@typscript-eslint
抱怨这张支票?有什么方法可以重写代码,以便我在不使不满意的情况下进行必要的检查?
由于打字稿对您撒谎。 🙂
用l用的覆盖物直接从打字稿中吸收类型以做出决策。如果定义了Typescript认为
@typescript-eslint
是定义的,那么绒毛规则也将。
Typescript的类型检查器默认情况下,所有数组索引都提供了来自数组的元素。
@typescript-eslint/no-unnecessary-condition
,match[0]
match[4]
,而不是
match[9001]
。这是为了便利:在大多数情况下,开发人员更喜欢假设存在数组元素。
选择加入,违约string
打字稿编译器选项开关打字稿的类型Checker更加严格。它更改数组索引访问以键入为值
或
string | undefined
(除非类型缩小)。从技术上讲,这是更典型的安全性,但实际上可能非常烦人。有关为什么默认情况下未启用noUncheckedIndexedAccess
的信息,请参见https://github.com/microsoft/typescript/pull/39560如果不想启用
undefined
,也确实希望避免使用该inline config注释来禁用ESLINT规则,则可以使用noUncheckedIndexedAccess
。但这是配置评论是正确策略的罕见但没有的案例之一。