关于react-v6版本类组件获取路由

在Reactv6之前,withRouter用于向非路由组件传递location、history和match。但v6中移除了withRouter,要访问路由信息,需在类组件中通过自定义方式引入。创建一个新的js文件,实现withRouter功能,然后在类组件中导入并使用,这样可以在this.props中获取路由相关参数。
摘要由CSDN通过智能技术生成

在react-v6之前的版本中,路由的三个参数location、history、match都是直接挂载到组件的props身上,即使组件不是路由组件,也可以使用withRouter高阶组件对普通组件进行增强,也可以将这三个参数带到props身上。在v6版本中withRouter直接被移除,就不能在用this.props中的对象直接获取路由,如果想在类组件获取路由的话可以通过重写withRouter方法。

新建一个js文件,写入如图代码

 ​​​​​

然后在你需要用的类组件按路径引用

import withRouter from '../withRouter'

export default withRouter(文件名);的方式暴露类即可。

总体:

 

 即可在里面运用。

this.props里面就有了location、params对象来获取路由及参数

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值