GatsbyJS错误地呈现了URL
我的页面在“页面”文件夹中,使用小写字母命名,如下所示:
pages
├── 404.js
├── faq.js
├── service
│ ├── service1.js
│ └── service2.js
└── services.js
Gatsby应该给他们提供与此小写名称相关的URL(例如,/ services for pages / services.js),并且它可以在开发模式下工作,但是在部署模式下(使用netlify),它不会呈现页面,也不会重新加载更改以大写字母开头的网址(例如/ 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
两个文件中的所有...都相同。
所有页面通过盖茨比链接进行链接:
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>
...
我尝试在元数据中设置siteUrl,但这没有帮助。
我该如何解决此问题?
回答如下:[看不到任何实际代码,链接到Gatsby中的页面的最简单方法(以我的观点是:]
import Link from 'gatsby-link'
然后:
<Link to="/the-path-you-want-to-link-to">
your link text
</Link>
只要您在siteUrl
文件中配置了gatsby-config.js
,您的链接路径就会被附加到该文件中,并且链接应该可以使用。您也可以始终使用<a>
标签对其进行硬编码。
很难说更多而没有看到任何代码示例。
发布评论