将 tsconfig 设置为忽略 "Property 'foo' does not exist on type 'bar'." 但仅针对特定变量

Set tsconfig to ignore "Property 'foo' does not exist on type 'bar'." but only for a specific variable

我有一个对象 foo 在整个代码库中使用,需要从中访问 属性 bar。但是由于具体情况ts认为上面不存在属性,虽然实际上是存在的。所以我到处都收到这条消息的红线:

Property 'foo' does not exist on type 'bar'

在我的 ts-config 文件中,我想将其设置为忽略所有这些错误,但仅针对 foo 变量。

这可以做到吗?

您不能在tsconfig中执行此操作,没有这样的设置。您可以做几件事中的一件。

any 使用类型断言。使用这个允许所有 属性 访问:

(bar as any).foo

另一种选择是只抑制错误。您可以使用 @ts-ignore 来抑制下一行的所有错误

//@ts-ignore
bar.foo // no error

Playground Link

注意:你最好找到错误的原因,或者增加类型或将变量的类型充电到包含foo的东西但是没有更多细节,很难提出解决方案。