在 React 应用程序中试验 Three.js,我制作了一个在本地工作的示例的原型;但是,无法从静态主机(如 GitHub 或 Amazon S3(远程加载。
如果我在本地运行我的 GitHub 项目,它可以工作:
$ parcel index.html --open
但是,一旦我构建了一个可分发对象并推送到我的 GitHub 页面,脚本就无法执行 - 只是一个空白页面。 正在加载所有 CSS 和 JavaScript,但控制台中不存在任何错误。
$ parcel build index.html --public-url '.'
奇怪的是,我可以在完全相同的构建上使用serve
,并且它可以在本地工作。
我最初的想法只是路径,我向其中添加了--public-url '.'
到我的包裹构建命令中。 所有脚本似乎都已正确路径和加载。
似乎问题可能源于将所有模块导入为:
import * as THREE from 'three';
这可能是巧合,但我有另一个 GitHub 项目,在导入所有模块时在 GitHub 页面上表现出相同的问题。 为了进行健全性检查,我确实有使用 Parcel 的 React 项目,可以毫无问题地构建和部署。
Percel 不支持名称中的句点。
如:username.github.com
行不通。
根据 GitHub 问题 #2093,这已得到修复。