【问题标题】:Set tsconfig to ignore "Property 'foo' does not exist on type 'bar'." but only for a specific variable将 tsconfig 设置为忽略“类型 'bar' 上不存在属性 'foo'。”但仅适用于特定变量
【发布时间】:2020-05-16 07:07:27
【问题描述】:

我有一个对象foo,它在整个代码库中都被使用,并且需要从中访问属性bar。但是,由于特定情况,ts 认为属性在其上不存在,即使它实际上存在。所以我在各处都收到了这条消息的红线:

类型“bar”上不存在属性“foo”

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

这个可以吗?

【问题讨论】:

    标签: typescript lint tslint tsconfig


    【解决方案1】:

    tsconfig中不能这样做,没有这样的设置。您可以做几件事中的一件。

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

    (bar as any).foo
    

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

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

    Playground Link

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

    【讨论】:

    • 猜猜这是我试图避免的,因为它到处都是。但如果做不到,那就做不到。感谢您的帮助!
    猜你喜欢
    • 2021-08-08
    • 2020-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多