sublime本身不检查js语法,eslint实时检查必须依赖sublimelinter框架、sublimelinter-eslint插件及本地eslint可执行文件三者联动;任一缺失或配置错误(如语法未设为javascript、executable路径错误、lint_mode未设为background、.eslintrc.*文件命名或位置不符)均导致检查失效。

Sublime 本身不检查 JS 语法,ESLint 实时检查必须靠 SublimeLinter + SublimeLinter-eslint + 本地 eslint 可执行文件三者联动,缺一不可;任何一环断开,状态栏就显示 Plain Text 或 JSON,错误图标也不会出现。
文件没被识别为 JavaScript,ESLint 根本不启动
右下角状态栏显示 Plain Text 或 JSON,说明 Sublime 没把当前文件当 JS 处理,SublimeLinter-eslint 压根不会启动。
- 手动设置语法:菜单 View → Syntax → JavaScript (Babel)(比原生 JavaScript 更兼容 JSX/TSX)
- Vue 单文件组件(
.vue)必须装Vue Syntax Highlight插件,并确认状态栏显示Vue Component;否则即使配置了--ext .vue也无效 - 无后缀脚本(如
webpack.config)需手动指定语法,否则内容是 JS 也触发不了 lint
executable 路径填错,静默失败最常见
SublimeLinter-eslint 默认从 $PATH 找 eslint,但 macOS/Linux 多 Node 版本、Windows WSL、nvm/fnm 环境下,终端里 which eslint 输出的路径往往和 Sublime 继承的 PATH 不一致。
前端设计与 UI/UX 全方位优化专家。覆盖视觉层次、排版系统、色彩理论、响应式布局、交互体验、动画动效、无障碍访问、性能优化八大维度,帮助开发者将普通页面升级为高品质产品级界面。前端设计与 UI/UX 全方位优化专家。覆盖视觉层次、排版系统、色彩理论、响应式布局、交互体验、动画动效、无障碍访问、性能优化八大维度,帮助开发者将普通页面升级为高品质产品级界面。
- 优先用项目本地路径:
"executable": "./node_modules/.bin/eslint"(相对路径,Sublime 会自动补全为项目根目录下的真实路径) - macOS/Linux 绝对路径示例:
"executable": "/Users/you/project/node_modules/.bin/eslint" - Windows 注意:别填
eslint.cmd,填eslint即可(插件会自动适配) - 验证方式:打开 Sublime 控制台(
Ctrl+`),输入import os; print(os.environ.get('PATH')),看输出是否包含你which eslint的目录
lint_mode 和 args 配置不当,检查卡顿或不修复
默认 lint_mode 是 ["on_load", "on_modified"],每敲一个字都调一次 eslint 进程,大型文件或启用 typescript-eslint 时极易卡顿甚至假死。
- 设为
"lint_mode": ["on_save", "on_modified"]:保存瞬间完整检查一次,on_modified仅用于快速提示(如括号未闭合) - 加
"delay": 0.5防止连打触发子进程堆积 -
--fix不是默认行为,右下角显示ESLint: 3 errors但代码不动——这正常。启用自动修复需显式加:"args": ["--fix"] - 若项目用
eslint.config.js(ESLint v8.50+ 新格式),必须显式指定:"args": ["--config", "${project}/eslint.config.js"]
.eslintrc.* 不生效,名字、位置、解析三者全要对
ESLint 报 “no problems detected” 或只报基础错误,大概率是压根没加载你的配置文件。
- 只认标准命名:
.eslintrc.js、.eslintrc.cjs、.eslintrc.json、.eslintrc.yml;eslint.config.js目前不被SublimeLinter-eslint支持 - 必须放在项目根目录,或其任意父级目录——但前提是 Sublime 是通过 Project → Add Folder to Project 打开整个文件夹,而不是单个
.js文件 - 验证是否真被读取:终端进项目根目录,运行
eslint --print-config index.js,看输出是否含你写的规则;空输出或报错 = 配置未命中 - 避免写
"ecmaVersion": "latest",某些旧版插件解析会崩溃,改用具体数字如2022
真正容易被忽略的是:Sublime 是否“认为”你打开了项目。单文件打开、拖拽文件进编辑器、或通过快捷方式直接启动 Sublime 再双击文件,都会导致插件找不到 node_modules/.bin/eslint 和向上查找配置文件的路径上下文——必须用 Project → Add Folder to Project 显式加载整个目录。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










