Reactjs 从标题组件访问this.props.location

Reactjs 从标题组件访问this.props.location,reactjs,react-router-v4,Reactjs,React Router V4,正如您所知,只有当呈现的组件被包装在中时,才能访问this.props.location 我不想通过在我拥有的每个组件中放置一个this.props.location来跟踪和保存用户导航的URL,我只想通过在标题处放置一个this.props.location来提取位置。但是,由于以下明显的原因,并没有包装标题 从路由树定义如下的标头组件访问this.props.location的最佳方式是什么: ... import { BrowserRouter as Router, Route } fro

正如您所知,
只有当呈现的组件被包装在
中时,才能访问this.props.location

我不想通过在我拥有的每个组件中放置一个
this.props.location
来跟踪和保存用户导航的URL,我只想通过在标题处放置一个
this.props.location
来提取位置。但是,由于以下明显的原因,
并没有包装标题

从路由树定义如下的标头组件访问
this.props.location
的最佳方式是什么:

...
import { BrowserRouter as Router, Route } from "react-router-dom";
...
      <Router>
        <div>
          <Header />
          <Route path="/dummy" component={Dummy} />
        </div>
      </Router>
...
。。。
从“react Router dom”导入{BrowserRouter as Router,Route};
...
...

您的问题有两种解决方案

首先,有一个默认的路由,该路由呈现标题样式

...
import { BrowserRouter as Router, Route } from "react-router-dom";
...
      <Router>
        <div>
          <Route component={Header} />
          <Route path="/dummy" component={Dummy} />
        </div>
      </Router>
...
import {withRouter} from 'react-router;
...
export default withRouter(Header);