我有一个类似以下代码的React路由:
<Route path='/settings' component={Settings} />
在“设置”组件中,它具有3个嵌套的路由:
<Route path='/settings/general' component={GeneralSetting} />
<Route path='/settings/team' component={TeamSetting} />
<Route path='/settings/email' component={EmailSetting} />
所以我的问题是,如何仅不用父路径(“ / settings”)在最正确的位置(例如“ / general”,“ / email”)获得嵌套路径名。当前,我在位置路径名(/ settings / general)上使用字符串拆分器来实现此目的。对于这种情况是否有最佳实践?
感谢您的帮助。预先感谢。
答案 0 :(得分:1)
IMO,没有最佳实践来在React Router中获得子路径。您正在位置上使用字符串拆分器,但这很好。 如果您仍然只需要获取子路径,则可以在url中使用params,并根据以下
参数来呈现组件 <Route path='/settings/:type' component={Type} />
在Type(用于渲染子级的新组件)组件中,您可以获取如下所示的参数
this.props.match.params.type
这将根据您的网址为您提供一般,团队和电子邮件的价值。