【问题标题】:Get attribute value defined in route in React router 4获取 React 路由器 4 中路由中定义的属性值
【发布时间】:2018-02-20 20:09:14
【问题描述】:

如何获取路由中定义的属性值?

export default () => (
    <Router>
        <App>           
            <Route exact path="/" title="Home" componenet={Home} />                 
            <Route exact path="/about" title="About" component={About} />
        </App>
      </Router>
);

我想在 app.js 中获取标题

export default class App extends React.Component {
    componentDidMount() {       
        console.log(this.props.title);
    }
}

但是,它返回 undefined。

【问题讨论】:

  • 在答案中添加了示例,但是您想在这里实现什么?

标签: reactjs react-router react-router-v4 react-router-dom


【解决方案1】:

您将 title 属性传递给 Route 组件,而不是 App 组件。如果您在App 中需要title,则需要显式传递:

export default () => (
    <Router>
        <App title="Home">           
            <Route exact path="/" title="Home" componenet={Home} />                 
        </App>
      </Router>
);

但这可能不是您想要实现的目标,因为您的 app 中包含多个 titles

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-17
  • 2015-12-18
  • 2019-11-15
  • 1970-01-01
  • 2014-12-04
相关资源
最近更新 更多