

新闻资讯
行业动态本地文件双击打开会触发CORS限制,需用HTTP服务(如python3 -m http.server)访问;DevTools可模拟弱网和设备;需启用source map调试;静态资源路径要匹配部署子路径。
HTML5 页面如果包含 fetch、XMLHttpRequest 或 importScripts 等跨源请求,用文件协议(file://)直接双击打开,浏览器会因安全策略拒绝加载资源——这不是代码写错了,是协议本身被拦了。
file:// 下的 AJAX 请求;Firefox 行为稍宽松但也不稳定python3 -m http.server 8000(Python 3)或
npx http-server -p 8000(需 Node.js)
http://localhost:8000/index.html,CORS 问题立刻消失上线前不测网络降级和小屏适配,等于把 bug 直接交给用户发现。DevTools 的 Network 和 Device Toolbar 不是摆设,得真用。
Cmd+Shift+P(Mac)或 Ctrl+Shift+P(Win/Linux),输入 Network conditions 回车,勾选 Offline 或选 Slow 3G 模拟卡顿Toggle device toolbar(快捷键 Ctrl+Shift+M),选 iPhone SE 或 Nexus 5X 看响应式是否断裂viewport meta 标签是否漏写? 缺失会导致移动端页面缩放异常压缩后的 JS 报错常显示 app.min.js:2:12345,这种定位毫无意义。上线前必须确认 sourcemap 是否生成且路径正确,否则调试等于盲人摸象。
检查构建配置中 devtool 是否设为 source-map(生产环境可设 hidden-source-map,配合错误监控平台使用).map 文件与 JS 同目录,且 JS 文件末尾有注释行://# sourceMappingURL=app.js.map
Settings → Preferences → Sources → Enable JavaScript source maps 必须勾选Uncaught TypeError: Cannot read property 'xxx' of undefined,别急着改代码,先点堆栈里带 .ts 或 .jsx 的那一行,看原始源码位置开发时用 /static/logo.png 能显示,上线部署到子路径如 https://example.com/my-app/ 就 404——因为 /static/ 被解析成根目录,实际资源在 /my-app/static/ 下。
立即学习“前端免费学习笔记(深入)”;
vite.config.ts 中 base 配置:base: '/my-app/'(结尾带斜杠)output.publicPath,值必须与部署路径一致 统一基准,避免零散写死 ./ 或 /
curl -I https://example.com/my-app/static/main.css 实测资源能否返回 200,比肉眼刷新网页更可靠真正卡住上线的,往往不是语法错误,而是路径、协议、构建配置这三处的隐性不一致。每个环节都得用真实请求验证,而不是依赖“看起来正常”。