我如何从 React 子路由导航回父路由
How do I navigate from a React Child route back to a parent
在我的应用程序中,我有一个博客 模块。当路由匹配 '/blog' 时,博客根组件根据以下内容呈现:
<Route path="/blog" component={BlogRoot} />
在此组件中有一个子路由器:
<BrowserRouter>
<Switch>
<Route path={`${match.path}/:slug`} component={BlogPost} />
<Route path={match.path} exact component={BlogListing} />
</Switch>
</BrowserRouter>
我无法从博客Post 组件(与 ${match.path}/:slug
匹配)导航回列表(与 path={match.path} exact
匹配的列表)。在 Blog Post 路由上,使用 Link to="/blog"
不会呈现 Blog Listing 组件(它保留在当前 BlogPost 上)。
我做错了什么?
提前致谢。
之所以停留在同一个组件,是因为找不到下一条路线。
为此,您需要先定义动态路由 (/:slug
),然后再使用您的组件路由。
在我的应用程序中,我有一个博客 模块。当路由匹配 '/blog' 时,博客根组件根据以下内容呈现:
<Route path="/blog" component={BlogRoot} />
在此组件中有一个子路由器:
<BrowserRouter>
<Switch>
<Route path={`${match.path}/:slug`} component={BlogPost} />
<Route path={match.path} exact component={BlogListing} />
</Switch>
</BrowserRouter>
我无法从博客Post 组件(与 ${match.path}/:slug
匹配)导航回列表(与 path={match.path} exact
匹配的列表)。在 Blog Post 路由上,使用 Link to="/blog"
不会呈现 Blog Listing 组件(它保留在当前 BlogPost 上)。
我做错了什么?
提前致谢。
之所以停留在同一个组件,是因为找不到下一条路线。
为此,您需要先定义动态路由 (/:slug
),然后再使用您的组件路由。