【问题标题】:How React Router persist state object?React Router 如何持久化状态对象?
【发布时间】:2019-12-23 16:26:53
【问题描述】:

我需要知道 react-router-dom 如何持久化状态对象,例如我有这样的路由:'http://localhost:3000/somepath/123',如果我在新的浏览器选项卡上打开此路由,状态对象显然是未定义的,如果我从某处重定向到该路由,然后状态是来自应用程序状态的对象,这是完全正常的......但问题是,当我从不同的路由重定向并且我刷新页面几次时,状态又是一个对象,如何反应即使我刷新页面也保持状态?

<Link
  to={{
    pathname: '/somepath/:someid',
    state: state.obj[someid]
  }}
>
 Link to somepath
</Link>

【问题讨论】:

标签: reactjs react-router


【解决方案1】:

React-router-dom 不会持久化状态。浏览器可以。
React 路由器使用历史 API 来推送和弹出状态。

您描述的行为是 history.state 的工作原理。
所以刷新后,浏览器会保持历史状态。
检查History API

【讨论】:

    猜你喜欢
    • 2019-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-27
    • 2019-04-14
    • 1970-01-01
    • 2011-05-25
    • 1970-01-01
    相关资源
    最近更新 更多