【发布时间】:2020-03-11 12:59:09
【问题描述】:
我正在创建一个仪表板页面,如果路由路径是 /dashboard,我总是希望在其中显示一个侧边栏组件。但我也希望 /dashboard 也渲染另一个组件。
我想要达到的目标:
- 路由路径:/dashboard 应该呈现
Sidebar.js+Overview.js组件。 - 路由路径:/dashboard/account 应该呈现
Sidebar.js+Account.js组件。 - 路由路径:/dashboard/favorites 应该呈现
Sidebar.js+Favorites.js组件。 - 等等……
有人可以指出正确的方向如何实现这一目标吗?我无法理解它......
请参阅下文以更了解我想要的效果:
这是我迄今为止尝试过的:
<Route path="/" exact component={Home} />
<Route path="/podcast/:podId/:podName" component={Podcast} />
<Route exact path="/categori/:categoryName" component={Category} />
<AuthRoute path="/login" component={Login} />
<AuthRoute path="/signup" component={Signup} />
</Switch>
<Route
path="/dashboard"
render={({ match: { url } }) => (
<>
<Route path={`${url}/`} component={Sidebar} />
<Route path={`${url}/`} component={Overview} />
<Route path={`${url}/favorites`} component={Favorites} />
</>
)}
/>```
【问题讨论】: