在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对象来获取路由及参数