从Starter Pack启动新的Gatsby网站,同时能够通过gatsby develop
或gatsby serve
正确运行,而当我通过gatsby build
运行时,/ public文件夹中的文件无法自行运行,即双击“ index.html”以在浏览器中将其打开。它只显示一个程式化的网站(CSS可以工作),但功能已被破坏,还有其他一些中断,例如...
图像路径断开,单击事件断开,甚至页面链接也断开。是什么赋予了?我缺少一些依赖吗?
我已经在Mac和PC上尝试过。使用NPM和Gatsby CLI
答案 0 :(得分:0)
如果您检查生成的.html
,则会看到其中的所有链接都是根相关的(例如/page-2
与./page-2
)。如果尝试在浏览器中加载此文件,它将在计算机的根目录(页面所在的目录)中寻找page-2
。
您需要一台可以静态服务目录的服务器。这样,目录中的每个文件都将映射到url,浏览器可以理解每个页面中的绝对链接。这就是gatsby serve
可以工作的原因,但是单击html本身却不能。