我在“pages”文件夹中有我的页面,用这样的小写名称调用:
pages
├── 404.js
├── faq.js
├── addresses.js
├── service
│ ├── service1.js
│ └── service2.js
└── services.js
Gatsby 应该为他们提供与此小写名称相关联的 URL(例如 /services 用于 pages/services.js),并且它在开发模式下工作,但在部署模式下(使用 netlify)它不会呈现页面并且在重新加载时会将 URL 更改为以大写字母开头(如 /Services),然后加载。
最奇怪的是,有些页面可以正常工作(例如 /faq,它是 services.js 的完全副本,只更改了函数名称),而其他页面则不能。
services.js 的代码:
import React from "react"
...
function Services() {
return (...)
}
export default Services
和faq.js的代码:
import React from "react"
...
function Faq() {
return (...)
}
export default Faq
所有 ... 在两个文件中都相同。
所有页面都通过 Gatsby Links 链接:
import { Link } from "gatsby"
看起来像这样:
...
<div className="footer-column">
<div className="footer-header">For clients</div>
<Link to="/services/" className="footer-item"> // Problem one
Our services
</Link>
<Link to="/faq/" className="footer-item"> // Working fine
Frequently asked questions
</Link>
</div>
...
以前我创建文件夹“服务”,然后将其重命名为“服务”,也许这里出现问题?但同时链接到 /addresses 也不起作用,并且从来没有一个名为“addresses”的文件夹。
我尝试在元数据中设置 siteUrl,但没有帮助。
我该如何解决这个问题?
守着星空守着你
慕斯王
墨色风雨
相关分类