sublime text 的 livereload 插件仅发送通知,需搭配浏览器扩展和服务端协同工作;它监听保存事件并向 localhost:35729 发 post 请求,不启动服务、不解析文件类型。

Sublime Text 本身不支持保存即刷新,所谓“LiveReload 自动预览”必须三端协同:Sublime 插件(只发通知)、浏览器扩展(监听并刷新)、服务端(可选但推荐)。缺一环,保存就静默失败。
LiveReload 插件在 Sublime 里到底干了什么
它不是刷新器,是通知器:LiveReload 插件监听文件保存事件,然后向 localhost:35729 发一个 POST /changed 请求。它不启动服务、不打开浏览器、不解析 HTML,也不管你用的是 .html 还是 .md。
常见错误现象:
- 保存后浏览器毫无反应 → 很可能没装/没启用 Chrome 的 LiveReload 扩展
- 控制台报
WebSocket connection to 'ws://localhost:35729/livereload' failed→ 端口不一致或服务没起 - 改了 CSS 不刷新 →
--exts没包含css,或插件设置里没启用SimpleRefresh
Chrome 扩展必须手动启用且走 http 协议
官方 LiveReload 扩展(图标是黑白靶心,开发者为 LiveReload.com)安装后默认是空心状态,必须点击地址栏图标让它变实心,才算启用当前页面。
更重要的是:它**完全拒绝 file:// 协议**。哪怕你双击 HTML 文件用 Chrome 打开,扩展也会静默失效。
必须满足以下任一条件:
- 用
browser-sync启服务,访问http://localhost:3000 - 用
livereloadCLI 启服务,访问http://localhost:35729 - 用 Python 或其他方式起一个本地 HTTP 服务(如
python3 -m http.server 8000)
另外,Chrome 设置里要勾选「允许访问文件网址」——但这只是让扩展能加载,不解决 file:// 下无法通信的根本限制。
Markdown 实时预览不能靠默认配置
Markdown Preview 插件生成的是临时 HTML 文件,路径不固定;而 LiveReload 默认只监听 .html、.css、.js,对 .md 完全无感。
想实现“改 .md → 自动生成 HTML → 刷新浏览器”,得手动干预:
- 在
Preferences → Package Settings → LiveReload → Settings – User中添加:{"enabled_plugins": ["SimpleReloadPlugin", "SimpleRefresh"], "file_types": ["md"]} - 确保
Markdown Preview已开启自动重载:"enable_autoreload": true(在它的 Settings – User 里) - 首次预览必须先手动运行一次
markdown_preview命令(快捷键或右键菜单),否则 LiveReload 没目标可刷
注意:SimpleReloadPlugin 是触发重新生成 HTML 的关键,漏掉它,.md 保存只会发空通知。
BrowserSync 是目前最稳的替代方案
比起折腾 LiveReload 三端对齐,browser-sync 把服务、监听、注入、跨设备都打包好了,Sublime 只需专注写代码。
实操步骤:
- 全局安装:
npm install -g browser-sync(确认已装 Node.js) - 进项目根目录,运行:
browser-sync start --server --files "*.html, *.css, *.js, *.md" - 浏览器打开
http://localhost:3000,之后 Sublime 保存任意匹配文件,页面立即刷新 - 如需免按 Ctrl+S,加配置:
"save_on_focus_lost": true(在 Sublime 的Preferences → Settings)
关键细节:--files 必须显式列出后缀,通配符不递归子目录;若要监听 css/ 下所有文件,得写成 "css/**/*.css"。
ST4 用户尤其要注意:原 LiveReload 插件(dwieeb 版)已停止维护,ST4 上静默失效,别再花时间调配置。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











