live server是最直接有效的选择,安装后右键html文件选择“open with live server”,即可通过http://127.0.0.1:5500自动启动本地http服务并实现实时刷新,避免file://协议导致的跨域和资源加载问题。

Live Server 是最直接有效的选择
不需要额外配置就能在保存时自动刷新浏览器,且自带本地 HTTP 服务,避免 file:// 协议下因跨域或资源加载失败导致的 JS/CSS 不生效问题。
常见错误现象包括:net::ERR_FILE_NOT_FOUND、Access to script at 'file://...' has been blocked —— 这些基本都是没启服务、直接双击打开 HTML 导致的。
- 安装后右键 HTML 文件 →
Open with Live Server,会自动在默认浏览器打开http://127.0.0.1:5500/xxx.html - 修改文件保存后,页面自动刷新(无需手动 F5)
- 端口冲突时,它会在控制台输出
Port 5500 is already in use, trying 5501...,可手动在设置里改liveServer.settings.port - 不支持 HTTPS,也不需要——开发阶段用 HTTP 完全够用
open in browser 插件适合静态单页快速验证
它不启动服务器,只是把当前 HTML 文件用 file:// 协议丢进浏览器,适合纯 HTML+CSS 的静态页面、无 JS 交互或不依赖 API 的场景。
优势是轻量、无后台进程;劣势是:一旦用了 fetch、import、localStorage 等受协议限制的功能,立刻报错。
- 右键 →
Open in Default Browser或Open in Other Browser - 可在设置中指定默认浏览器路径,比如
"openInBrowser.default"设为"chrome" - 不监听文件变化,每次改完都要手动右键再点一次
Debugger for Chrome 用于真实调试而非预览
它不是预览插件,而是把 VS Code 和 Chrome DevTools 连起来做断点调试。如果你需要看 console.log、检查 DOM 变化、单步执行 JS,这才是该用的工具。
容易踩的坑:装了但没配 launch.json,点调试按钮会报 No debugger configured;或者 URL 写错(比如写成 file:/// 而不是 http://localhost:5500/)。
- 必须配合 Live Server 或其他本地服务一起用,不能单独预览
-
launch.json中url字段要和 Live Server 启的服务地址一致,例如"http://localhost:5500/index.html" - 启用
sourceMapPathOverrides才能正确映射构建后的代码(如 Vue/React 项目)
别装 Prettier 或 ESLint 来解决预览问题
它们不负责打开浏览器,也不影响页面是否能跑起来。有人误以为格式化好代码就能“正常显示”,其实只是掩盖了根本问题:没走 HTTP 协议。
如果你改完代码页面没反应,先确认是不是用了 Live Server;而不是去调 prettier.semi 或加 eslint-plugin-react。
- Prettier 解决的是缩进、引号、换行等风格问题,跟运行无关
- ESLint 检查的是潜在逻辑错误,比如变量未定义、
setState位置不对,也不会让页面从白屏变正常 - 这两者都属于“写完之后再校验”,不是“写完之后能看见”
vite dev 或 npm start),这时候反而不该用 Live Server —— 它会起冲突,端口占着、热更新失效、甚至报 Cannot use import statement outside a module。这种情况下,得关掉 Live Server,用框架自己的服务。











