首页 > 解决方案 > 如何从 React Child 路由导航回父级

问题描述

在我的应用程序中,我有一个博客模块。当路由匹配“/blog”时,Blog Root 组件将根据以下内容呈现:

<Route path="/blog" component={BlogRoot} />

在这个组件中有一个子路由器:

<BrowserRouter>
  <Switch>
    <Route path={`${match.path}/:slug`} component={BlogPost} />
    <Route path={match.path} exact component={BlogListing} />
  </Switch>
</BrowserRouter>

我无法从 BlogPost 组件(匹配${match.path}/:slug)导航回列表(匹配的一个path={match.path} exact)。在 Blog Post 路由上时,使用 aLink to="/blog"不会呈现 Blog Listing 组件(它停留在当前的 BlogPost 上)。

我究竟做错了什么?

提前致谢。

标签: reactjsreact-routerreact-router-domreact-router-v4

解决方案


它停留在同一个组件的原因是,它无法找到下一条路线。为此,您需要先定义动态路由 ( /:slug),然后再使用组件路由。


推荐阅读