首页 > 解决方案 > 如何从 React Typescript 的整个项目中删除未使用的导入/声明?

问题描述

我正在尝试删除未使用的导入和声明,如Angular的这个 SO 线程中所回答的那样。我正在尝试使用eslint-plugin-react来实现目标,但没有找到任何选项来使用单个命令从整个项目中删除未使用的导入和声明。

这是我的 .eslintrc.json

{
    "env": {
        "browser": true,
        "es2021": true
    },
    "extends": [
        "eslint:recommended",
        "plugin:react/recommended",
        "plugin:@typescript-eslint/recommended"
    ],
    "parser": "@typescript-eslint/parser",
    "parserOptions": {
        "ecmaFeatures": {
            "jsx": true
        },
        "ecmaVersion": 12
    },
    "plugins": [
        "react",
        "@typescript-eslint",
        "unused-imports"
    ],
    "rules": {
        "indent": [
            "warn",
            "tab"
        ],
        "linebreak-style": [
            "warn",
            "windows"
        ],
        "quotes": [
            "warn",
            "double"
        ],
        "semi": [
            "warn",
            "always"
        ],
        "@typescript-eslint/no-unused-vars": "on",
        "unused-imports/no-unused-imports-ts": "on"
    }
}

或者有没有办法在 VS Code 中使用 ESLint 或 Typescript Hero 扩展来做同样的事情?

标签: reactjstypescriptvisual-studio-codeeslint

解决方案


使用unused-imports插件和unused-imports/no-unused-imports-ts规则, eslint --fix将删除imports.

这是一个示例 repo,它--fix删除了未使用import的 s。

https://github.com/moshfeu/eslint-ts-unused-imports

旧答案

eslint有一个内置的修复选项。

eslint ... --fix

如果rulescontains no-unused-vars,eslint 将通过删除它们(以及其他自动修复)来“修复”未使用的导入。


推荐阅读