用途:ESLint 是 JavaScript/TypeScript 的行业标准静态分析工具,用于在代码审查前捕获缺陷、反模式与语法错误,并统一团队代码规范。
主要能力:支持 ESLint v9+ 的现代 Flat Config(eslint.config.js / eslint.config.mjs),可组合 @eslint/js、typescript-eslint、eslint-plugin-react、eslint-plugin-react-hooks、eslint-plugin-jsx-a11y 等配置;支持类型感知规则(recommendedTypeChecked,需配置 parserOptions.project);支持编写自定义规则(meta 与 create 结构,通过 context.report 报告);支持自动修复与缓存。
使用方式:通过 CLI 运行,如 npx eslint .、npx eslint . --fix、npx eslint . --cache --cache-location .eslintcache。配置中可用顶层 { ignores: [...] } 忽略文件,在 plugins 映射中声明插件,在 rules 中设置规则级别与选项。
适用场景:React、Next.js、Vue、Node.js 代码库的规则合规自动化,TypeScript 最佳实践强制,React Hooks 依赖与可访问性检查。
限制与注意:不要用 ESLint 做代码格式化(缩进、分号),应交给 Biome 或 Prettier;避免用 /* eslint-disable / 全局禁用规则;启用类型感知规则时必须提供 parserOptions.project,否则会解析报错。旧版 .eslintrc. 在 v9+ 已弃用,需迁移到 Flat Config。常见问题包括找不到配置文件、tsconfig.json 路径错误、插件未在 plugins 中声明等。