非路由组件没有histoey、match 等路由组件额外接收的props参数,但是我也想让它使用这些参数,那么就请 withRouter 出马!
import React, { Component } from 'react'
// 引入 withRouter 函数
import {withRouter} from 'react-router-dom'
class Xxx extends Component {
// 在这个普通组件使用了路由组件的API等...
}
export default withRouter(Xxx)
- withRouter 可以加工一般组件,让一般组件具备路由组件所特有的 API
- withRouter的返回值是一个新组件