【发布时间】:2020-09-07 04:01:00
【问题描述】:
我正在尝试制作一个只有一页来处理所有路线的 Gatsby 项目。我有这样的索引页面:
const App = () => {
return <Router>
<Home path="/"/>
<Login path="/login" />
<Content path="/content" />
</Router>
}
在src/pages 文件夹上我只有index.js
如何让这个页面处理所有的路由?
检查 Gatsby 文档 (https://www.gatsbyjs.com/docs/client-only-routes-and-user-authentication/) 我知道我可以像这样使用插件 gatsby-plugin-create-client-paths:
{
resolve: `gatsby-plugin-create-client-paths`,
options: { prefixes: [`/app/*`] },
},
如果我使用反应路由器创建一个名为app.js 的页面,这会很好。所以/app/*的所有路由都到了这个页面。
但是我怎样才能在根 url 上进行这种重定向:/。我想让任何路线/* 进入索引页面:index.js
关于如何做到这一点的任何建议? :)
【问题讨论】:
-
你找到解决办法了吗?
-
还没有西蒙。我正在使用一个名为
gatsby-plugin-create-client-paths的插件。它适用于/app等自定义前缀路由,但我无法使其在根路由/上运行
标签: reactjs gatsby reach-router