react-router v4 嵌套路由实现

本文介绍了react-router v4中的嵌套路由实现方式。与v4.0以下版本不同,4.0及以后版本的嵌套路由需要在组件内部单独处理。正确做法包括一级路由的设置,如在App组件内定义groups和users路由,以及在需要嵌套的组件如Users中,利用match属性添加二级路由,例如`<Route path={`${match.url}/:userId`} component={Profile}/>`。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. react-router4.0以下的嵌套路由实现 :

嵌套的路由可以放在一个router标签中,形式如下,嵌套的路由也直接放在一起。

<Route component={App}>

<Route path="groups" components={Groups} />

<Route path="users" components={Users}>

<Route path="users/:userId" component={Profile} />

</Route>

</Route>

2.但是4.0以后,嵌套的路由与之前的就完全不同了,需要单独放置在嵌套的根component中去处理路由

正确写法如下:

(1)项目的一级路由:

<Route component={App}>

<Route path="groups" components={Groups} />

<Route path="users" components={Users} />

</Route>

(2)在需要嵌套路由的component中添加新的路由:

const Users = ({ match }) => (

<div>

<h2>Topics</h2>

<Route path={`${match.url}/:userId`} component={Profile}/>

</div>

) ;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值