Sha*_*mor 5 routes reactjs gatsby
这是我的 gatsby-node.js 代码
exports.onCreatePage = async ({ page, actions }) => {
const { createPage } = actions;
// Only update the `/blogs` page.
if (page.path.match(/^\/blog/)) {
// page.matchPath is a special key that's used for matching pages
// with corresponding routes only on the client.
page.matchPath = "/blog/*";
// Update the page.
createPage(page)
}
}
Run Code Online (Sandbox Code Playgroud)
这是我在博客页面上包含的路线。
return (
<Layout>
<Router basepath="/blog">
<BlogPage path="/" blogs={blogs} tags={tags} categories={categories}/>
<BlogDetail path="/:slug" blogs={blogs} tags={tags.data}/>
<Category path="/category/:category" blogs={blogs} tags={tags.data} categories={categories.data}/>
<Category path="/tags/:tag" blogs={blogs} tags={tags.data} categories={categories.data}/>
<Category path="/author/:author" blogs={blogs} tags={tags.data} categories={categories.data}/>
</Router>
</Layout>
)
Run Code Online (Sandbox Code Playgroud)
单击重定向时工作正常。但是,一旦页面加载并刷新,就会出现 404 错误。
我尝试了很多解决方案,但运气不好。
这是我的文件结构。
小智 0
这是一个可能无法解决的已知问题。一种可能的解决方法是设置服务器端重定向。例如,如果您使用 netlify,您可以将其添加到您的netlify.toml:
[[redirects]]
from = "/blog/*"
to = "/blog"
status = 200
force = true
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2057 次 |
| 最近记录: |