React-router最佳实践来获取嵌套的路径路径名

时间:2019-09-04 07:10:41

标签: reactjs react-router react-router-v4 react-router-dom

我有一个类似以下代码的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)上使用字符串拆分器来实现此目的。对于这种情况是否有最佳实践?

感谢您的帮助。预先感谢。

1 个答案:

答案 0 :(得分:1)

IMO,没有最佳实践来在React Router中获得子路径。您正在位置上使用字符串拆分器,但这很好。 如果您仍然只需要获取子路径,则可以在url中使用params,并根据以下

参数来呈现组件

<Route path='/settings/:type' component={Type} />

在Type(用于渲染子级的新组件)组件中,您可以获取如下所示的参数

this.props.match.params.type

这将根据您的网址为您提供一般,团队和电子邮件的价值。