必须同时安装sublimelinter(主框架)和sublimelinter-eslint(适配器),否则插件无反应;配置文件需放在项目根目录并确保sublime以该目录为项目打开;自动修复需通过构建系统或jsprettier实现,非插件原生支持。

ESLint 插件装了但没反应?检查 SublimeLinter 和 SublimeLinter-eslint 是否共存
Sublime 本身不运行 ESLint,靠 SublimeLinter 这个通用框架调度具体检查器。只装 SublimeLinter-eslint 是不够的,必须同时安装 SublimeLinter(主框架)和 SublimeLinter-eslint(ESLint 适配器)。常见错误是只搜 “eslint” 装了后者就以为完事,结果保存后零提示、无波浪线。
- 用 Package Control 安装时,明确搜索并安装两个包:
SublimeLinter和SublimeLinter-eslint - 装完重启 Sublime,打开命令面板(
Ctrl+Shift+P/Cmd+Shift+P),输入SublimeLinter: Toggle Linting确保已启用 - 如果仍不工作,终端执行
which eslint,确认 ESLint 是全局可执行的;否则在SublimeLinter设置里手动指定executable路径
为什么改了 .eslintrc.js 没生效?路径和作用域决定配置加载逻辑
SublimeLinter-eslint 默认从当前文件所在目录向上查找最近的 .eslintrc.*,不是项目根目录,也不是用户主目录。如果你在 src/components/Button.js 编辑,它会依次查 src/components/.eslintrc.js → src/.eslintrc.js → /.eslintrc.js,找到第一个就停。
- 确保配置文件放在项目根目录(比如
/my-project/.eslintrc.json),且该目录是 Sublime 打开的文件夹(即Project → Add Folder to Project) - 避免用
eslintConfig字段写在package.json里——SublimeLinter-eslint不读这个 - 如果用了
extends: "eslint:recommended"却报错,大概率是本地没装对应版本 ESLint 包(npm install eslint --save-dev),而不是 Sublime 配置问题
eslint --fix 在 Sublime 里怎么自动跑?别依赖插件“一键修复”按钮
SublimeLinter-eslint 默认只做检查、标红,不自动修复。所谓“保存时自动 fix”其实是靠 ESLint 自身的 --fix 能力 + Sublime 的构建系统或保存钩子实现的,不是插件原生功能。
- 最稳的方式:用
Sublime Text Build System配一个 ESLint Fix 构建,内容为:{ "cmd": ["eslint", "--fix", "$file"], "selector": "source.js" } - 或者更轻量:装
JsPrettier插件(它支持调用 ESLint 的--fix),但注意它默认优先走 Prettier,需在设置里关掉auto_format_on_save并显式启用eslint_fix - 别信某些教程说“改
SublimeLinter设置里的fix\_on\_save”,这个选项属于旧版SublimeLinter 3,新版已移除,设了也无效
Windows 下路径空格或中文导致 ESLint 启动失败?看 SublimeLinter 控制台日志
Sublime 底部状态栏左下角点开 SublimeLinter 日志(或按 Ctrl+` 调出控制台),真实错误往往藏在这里。典型如:Error: spawn eslint ENOENT(找不到命令)或 Cannot find module 'eslint'(路径含空格/中文时 Node 解析失败)。
立即学习“Java免费学习笔记(深入)”;
- Windows 用户若全局安装了 ESLint,但路径含空格(如
C:\Program Files\nodejs\),建议用npm install -g eslint重装到不含空格路径(如C:\node-global\),再在SublimeLinter用户设置里指定:"executable": ["C:/node-global/node_modules/.bin/eslint.cmd"]
- Mac/Linux 用户遇到
EACCES权限错误,不是 Sublime 问题,是 npm 全局 bin 目录权限不对,用sudo chown -R $(whoami) $(npm config get prefix)/lib/node_modules修复 - 所有平台都建议关闭
SublimeLinter的delay(默认 0.25s),大文件编辑时容易误判为“卡死”而跳过检查










