vscode中eslint无反应,首要确认本地已安装eslint cli并正确配置路径;其次检查配置文件命名、位置及格式(推荐.eslintrc.cjs);再确保vscode继承shell环境变量或手动指定eslint.runtime;最后按需配置validate、codeactionsonsave及typescript支持。

VSCode 里装了 ESLint 插件却没波浪线、不报错、保存也不修复?八成不是插件没装好,而是项目没配 ESLint,或者 VSCode 根本没读到你的配置。
项目根目录有没有 .eslintrc.js 或 eslintConfig 字段
ESLint 插件本身不带规则,它只负责“读配置 + 调本地 eslint 命令”。没有配置文件,它连该检查什么都不知道。
- 运行
npx eslint --init,选框架(React/TypeScript/Vue)、模块系统、代码风格,自动生成.eslintrc.cjs(推荐)或.eslintrc.js - 如果用
create-react-app或 Vite,检查package.json里有没有eslintConfig字段;有就不用额外建文件 - 别用
eslint.config.js(ESLint v9 新格式),VSCode 插件对它的支持还不稳,尤其在 monorepo 下容易漏读 - 配置里加
"root": true,防止它往上层目录找错配置,引发规则冲突
eslint.validate 没列全语言类型,.tsx/.vue 文件就静默跳过
VSCode 默认只校验 javascript,你写的是 .tsx 却没告诉它,它就当普通文本处理,连解析器都不调用。
前端设计与 UI/UX 全方位优化专家。覆盖视觉层次、排版系统、色彩理论、响应式布局、交互体验、动画动效、无障碍访问、性能优化八大维度,帮助开发者将普通页面升级为高品质产品级界面。前端设计与 UI/UX 全方位优化专家。覆盖视觉层次、排版系统、色彩理论、响应式布局、交互体验、动画动效、无障碍访问、性能优化八大维度,帮助开发者将普通页面升级为高品质产品级界面。
- 在工作区
.vscode/settings.json里设:"eslint.validate": ["javascript", "typescript", "typescriptreact", "vue"] -
"typescriptreact"必须单独写,漏掉就无法检查.tsx;"vue"需配合已安装的eslint-plugin-vue - 值必须是字符串数组,不能写成
"javascript,typescript"这种单字符串 - 旧版
eslint.options(设cwd)已废弃,改用eslint.workingDirectories,monorepo 项目建议设为[{"mode": "auto"}]
本地 eslint 没装,或插件找不到它
插件默认只找项目根目录 node_modules/.bin/eslint。全局安装的 eslint 大概率被忽略,尤其用了 pnpm/yarn 2+ 的隔离模式时。
- 执行
npm install eslint --save-dev(或yarn add eslint -D),确认node_modules/.bin/eslint存在 - 若用 TypeScript,必须额外装:
npm install @typescript-eslint/parser @typescript-eslint/eslint-plugin --save-dev - 打开 VSCode 设置,搜
eslint.packageManager,设为npm/yarn/pnpm(和你项目一致) - 右下角状态栏点 ESLint 图标,看提示是 “Using locally installed ESLint” 还是 “Using globally installed ESLint”——后者说明路径没对上
保存时自动修复失效,其实是规则和格式化工具打架
"editor.codeActionsOnSave": {"source.fixAll.eslint": true} 只对 ESLint 自身支持 --fix 的规则生效(比如引号、分号),但它不会覆盖 Prettier 的格式动作。
- 禁用 Prettier 的自动格式:
"editor.formatOnSave": false,否则两者同时触发,代码可能被反复重排甚至删逻辑 - 不要开已废弃的
eslint.autoFixOnSave(VSCode 1.8x+ 已移除) - 确保
eslint-config-prettier已加入extends,关掉所有和 Prettier 冲突的规则 - 手动触发一次右键 → “ESLint: Fix all auto-fixable Problems”,看是否报错——报错常指向 parser 或 plugin 未安装
最易被忽略的一点:ESLint 配置按文件路径向上查找,.eslintrc.js 放在 src/ 目录下,对根目录的 index.js 就不生效。作用域永远以当前文件所在位置为准,不是 VSCode 窗口打开的路径。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










