白屏本质是dom树未建立,首要排查network面板中index.html的状态码(404/403)和content-type(非text/html会导致下载而非渲染),再验证html解析、script执行、路径配置及协议差异问题。

白屏不是“页面没画出来”,而是浏览器压根没建起 DOM 树——只要 index.html 没被当成 HTML 解析,后续一切都不成立。
Network 面板里 index.html 状态码或 Content-Type 异常
这是白屏最硬的信号,必须第一眼盯住它。
- 状态码是
404或403:路径大小写错、服务器路由没配回退、文件根本没部署(尤其注意 CI/CD 构建后是否真拷贝到了目标目录) - 状态码是
200但Content-Type不是text/html:比如返回了application/octet-stream、text/plain或空值——浏览器会下载文件而非渲染,常见于用file://协议双击打开,或 Nginx/Apache 没配 MIME 类型 - 右键“查看页面源代码”一片空白:说明服务端返回了空响应或重定向到了不存在地址;能看到原始 HTML 文本但页面不渲染:基本锁定
Content-Type错误
本地用 file:// 协议直接打开导致资源加载失败
这不是 bug,是现代浏览器的强制安全策略:禁止跨域请求、拦截 fetch、静默拒绝模块脚本加载,且相对路径解析行为与 HTTP 完全不同。
- 典型报错:
Access to script at 'file:///xxx.js' from origin 'null' has been blocked,或控制台无报错但 Network 里一堆net::ERR_FILE_NOT_FOUND - VS Code 的 Live Server 插件失效?确认当前文件已保存、扩展名是小写
.html、且项目根目录存在index.html - 临时方案:用
npx serve -s或python3 -m http.server 8000起服务,访问http://localhost:8000;真机调试 WKWebView 时,必须用loadFileURL:allowingReadAccessToURL:并传入父目录 URL
HTML 结构错误或 script 执行中断渲染
哪怕所有资源都 200,一个未闭合的 <script></script> 或内联 JS 里的未转义 ,都会让浏览器提前截断 DOM 解析。
- 用 W3C Validator 粘贴源码,重点看
Unclosed element、Stray end tag类报错 -
<script src="app.js"></script>标签体内不能写任何内容(HTML 规范禁止);<pre class="brush:php;toolbar:false;"></pre>或<textarea></textarea>里含必须转义为 <code>< - 在
index.html底部加<script>console.log('HTML parsed')</script>,确认是否走到这步;如果没输出,问题一定在 HTML 解析阶段,不是 JS 报错 -
<script type="module"></script>默认 defer,顶层语法错误(如await在非 async 函数里)会静默失败,控制台只报Uncaught SyntaxError
构建工具 publicPath / assetPrefix 配置导致 JS/CSS 404
打包后资源路径变成 /js/app.xxx.js 这种绝对路径,本地 HTTP 服务能跑通,但一旦部署到子路径(如 https://a.com/my-app/)或用 file:// 打开,就必然 404。
- Vue CLI:在
vue.config.js改publicPath: './';Vite:在vite.config.ts设base: './';Rsbuild:在rsbuild.config.ts的output下加assetPrefix: './' - 改完必须重新执行
npm run build,旧dist目录不会自动更新 - 检查
index.html中生成的<script src></script>和<link href>路径是否符合预期:是./js/app.js还是/js/app.js
真正难排查的白屏,往往卡在「有响应、有 HTML、没报错、但就是不渲染」——这时候别盯着 JS,先确认 #app 或 #root 元素是否存在、是否被提前移除、是否在 JS 执行前就被 CSS display: none 或 visibility: hidden 覆盖。DOM 挂载失败比 JS 报错更隐蔽。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











