ESLint必须本地安装,全局安装无效;VSCode插件仅调用项目node_modules/.bin/eslint,需在项目根目录执行npm install --save-dev eslint并用npx eslint --init生成配置,确保打开的是整个项目文件夹而非子目录。

ESLint 必须本地安装,全局装等于没装
VSCode 的 ESLint 插件不会自动调用全局安装的 ESLint,它只认项目内 node_modules/eslint。如果你执行 npm install -g eslint,插件大概率静默失效,连波浪线都不会出。
- 正确做法:在项目根目录运行
npm install --save-dev eslint - 接着用
npx eslint --init生成配置文件(别手写空.eslintrc.js,容易漏parserOptions或env) - 确保 VSCode 当前打开的是**整个项目文件夹**,不是
src/或lib/子目录——否则插件找不到node_modules和配置文件
诊断不标红?先看 Developer Tools 里报什么错
右键 → Developer: Toggle Developer Tools,切到 Console 标签页。常见错误信息直接暴露问题根源:
-
Cannot find module 'eslint'→ 本地没装 ESLint 或路径不对 -
No ESLint configuration found→ 配置文件名拼错(比如写成.eslintrc而不是.eslintrc.js),或不在根目录 -
Failed to load plugin 'react'...→ 缺少对应插件包,要npm install --save-dev eslint-plugin-react
这些错误比“为什么没反应”更值得第一时间查。
深度检查 ≠ 光靠默认规则,必须加插件和扩展集
基础 eslint:recommended 只覆盖语法层面,真正做“深度检查”得靠插件规则:
用于端到端视频本地化流程的轻量编排器,路由至四个专注子技能——/wjs-transcribing-audio、/wjs-translating-subtitles...
- React 项目加
plugin:react/recommended和plugin:react-hooks/recommended,能捕获useState闭包陷阱、useEffect依赖缺失 - Vue 项目用
plugin:vue/vue3-recommended,检查defineProps类型声明、emits显式定义 - TypeScript 项目必须配
@typescript-eslint/recommended,否则any、隐式any、类型断言滥用全被放过
所有这些都要写进 extends 数组,顺序无关,但必须存在。
保存时自动修复别乱开,ESLint 和 Prettier 会互相覆盖
如果开了 "editor.formatOnSave": true 同时又启用 "source.fixAll.eslint": true,而没协调好规则,会出现:const a = 1; → const a = 1 ;(多一个空格),再保存又变回去,波浪线反复闪。
- 只开
"source.fixAll.eslint": true,关掉"source.fixAll.prettier" -
extends里把prettier放最后:["eslint:recommended", "prettier"] -
.prettierrc必须存在且合法(JS 导出或纯 JSON,不能带注释)
深度检查的稳定输出,依赖的是规则不打架,而不是谁修得更快。

















