文章目录
- [1. 提出问题](#1. 提出问题)
-
- [1.1 网页无法渲染](#1.1 网页无法渲染)
- [1.2 调试寻找原因](#1.2 调试寻找原因)
- [2. 解决问题](#2. 解决问题)
-
- [2.1 更换可用的CDN链接](#2.1 更换可用的CDN链接)
- [2.2 浏览网页验证效果](#2.2 浏览网页验证效果)
- [3. 实操小结](#3. 实操小结)
1. 提出问题
1.1 网页无法渲染
- 页面一直提示"加载中..."

1.2 调试寻找原因
- 按
F12键,查看出错原因

- 报错原因主要有两点:一是
ERR_NAME_NOT_RESOLVED表示无法解析 CDN 域名,说明引用的外部 JS 库链接失效或网络不通;二是直接使用file://协议打开 HTML 会触发浏览器跨域安全策略(CORS),禁止加载模块脚本。解决方法是使用 VS Code 的 Live Server 插件或 Python 开启本地 HTTP 服务器运行项目,并检查更换可用的 CDN 链接。
2. 解决问题
2.1 更换可用的CDN链接
-
打开
a.html源码文件
js<script type="importmap"> { "imports": { "three": "https://unpkg.com/three@0.160.0/build/three.module.js", "three/addons/": "https://unpkg.com/three@0.160.0/examples/jsm/" } } </script> -
修改CDN源
js<script type="importmap"> { "imports": { "three": "https://esm.sh/three@0.160.0", "three/addons/": "https://esm.sh/three@0.160.0/examples/jsm/" } } </script>
2.2 浏览网页验证效果
- 刷新
a.html网页,可以看到网页正常显示

- 检验按钮是否有效

- 验证了每个按钮都能正常工作,可以看到页面不断渲染不同的效果图。
3. 实操小结
- 本次实践成功解决了
Three.js项目因CDN失效导致的渲染失败问题。通过分析浏览器控制台报错信息,精准定位了"ERR_NAME_NOT_RESOLVED"这一核心故障,即原有unpkg CDN源无法访问。针对此问题,采取了更换为esm.sh稳定源的策略,并修正了Import Map配置。同时,规避了直接双击HTML文件产生的跨域安全限制,借助本地服务器环境运行项目。最终,页面不仅实现了正常渲染,且交互功能验证无误,确保了Web 3D应用的流畅展示。