用于导入类型的 Eslint typescript no-unused-vars 触发器

Posted

技术标签:

【中文标题】用于导入类型的 Eslint typescript no-unused-vars 触发器【英文标题】:Eslint typescript no-unused-vars triggers for imported type 【发布时间】:2020-12-11 09:37:49 【问题描述】:

我不明白为什么这不起作用。我希望 @typescript-eslint/no-unused-vars 能够识别用于此函数返回类型的类型。我究竟做错了什么?我是否误解了这应该如何工作?

图片中的代码:

.eslintrc.json


    "env": 
        "browser": false,
        "node": true
    ,
    "extends": [
        "airbnb-base",
        "eslint:recommended",
        "plugin:@typescript-eslint/eslint-recommended"
    ],
    "parser": "@typescript-eslint/parser",
    "parserOptions": 
        "ecmaVersion": 2020,
        "sourceType": "module"
    ,
    "plugins": [
        "typescript",
        "@typescript-eslint"
    ],
    "settings": 
        "import/resolver": 
            "typescript": 
        
    ,
    "rules": 
        "no-unused-vars": "off",
        "@typescript-eslint/no-unused-vars": ["error"]
    

Service.ts:

export declare interface FooConfig 

Foo.ts:

import  FooConfig  from "library/types/Service";

export default function foo(): FooConfig 

    return ;


错误:

ESLint: 'FooConfig' 已定义但从未使用过。 (@typescript-eslint/no-unused-vars)

【问题讨论】:

【参考方案1】:

这似乎是我正在使用的版本 (4.0.0-alpha.1) 的一个已知问题,希望很快得到修复。

https://github.com/typescript-eslint/typescript-eslint/issues/2337

【讨论】:

以上是关于用于导入类型的 Eslint typescript no-unused-vars 触发器的主要内容,如果未能解决你的问题,请参考以下文章

Typescript、Airbnb 和 eslint 导入/无外部依赖项(带别名)

TypeScript Type 属性中的 ESLint 和 snake_case

@typescript-eslint/no-unused-vars 类型声明中的误报

为啥 Eslint 在 .vue 文件中看不到全局 TypeScript 类型(no-undef)

带有 @typescript-eslint/no-unsafe-* 规则的新 eslint 错误

在 CRA 2.1 Typescript 中导入时 ESLint 需要“.ts”