【问题标题】:What is meant to be passed in for the React Router <Router> history prop?React Router <Router> 历史道具的传入是什么意思?
【发布时间】:2017-08-12 08:56:24
【问题描述】:

我正在使用 react 路由器(4.0.0 版),Router 组件有一个名为“history”的必需属性。

我知道在以前版本的 react-router 中,您可以从包中导入 browserHistoryhashHistory 并将其作为 history 属性传递给 &lt;Router&gt;,但在 v4 中这些都不可用。

可用于该项目的文档没有提及如何处理此必需的历史道具 herehere,它引用了在 v4 包中不再可用的 hashHistory 导出。

有什么想法吗?

【问题讨论】:

    标签: javascript reactjs react-router


    【解决方案1】:

    如果你想使用带有历史记录的组件,你应该导入 browserHistory 或 hashHistory 来自 'react-router

    import { Router,browserHistory } from 'react-router';
    <Router history={browserHistory} routes={...} />
    or
    import { Router,hashHistory } from 'react-router';
    <Router history={hashHistory} routes={...} />
    

    https://github.com/ReactTraining/react-router/tree/v3/docs

    【讨论】:

    • 谢谢,但我的问题专门针对 react-router v4,此解决方案仅适用于 v2。另外,我已经回答了这个问题:)
    【解决方案2】:

    我正在导入{ Router } from 'react-router-dom',它实际上有一个必需的道具history,但我需要导入{ BrowserRouter as Router } from 'react-router-dom',它没有必需的道具历史记录。这为我解决了这个问题。

    【讨论】:

      猜你喜欢
      • 2019-02-06
      • 1970-01-01
      • 2017-08-08
      • 2017-05-22
      • 2019-05-09
      • 2018-11-20
      • 2021-10-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多