使用Gatsby Script API加载静态脚本返回404错误求助
Gatsby Script API加载static脚本404问题解决
核心问题:路径规则错误 + 文件名不匹配
你当前的问题出在两个地方:
- 引用路径不符合Gatsby的static文件规则:Gatsby构建时会把
static文件夹(无论放在项目根目录还是src目录下)里的文件直接复制到最终构建产物的根目录(public/)。所以引用static里的文件时,要使用根路径,而不是相对路径。 - 文件名不匹配:你的
static文件夹里是myscript.js,但代码里写的是test.js,这也会导致404。
修正后的代码
把mypage.js里的Script组件改成:
<Script id="hello" src="/myscript.js" />
额外注意事项
- 确保
static文件夹里的文件名称和代码里的引用完全一致,包括大小写(部分部署环境对文件名大小写敏感)。 - 如果你的
static文件夹是放在项目根目录下(Gatsby推荐的标准结构),引用规则同样适用,直接用根路径即可。
内容的提问来源于stack exchange,提问作者Arthur Fortin
相关产品推荐
相关产品推荐

