是否可以在不使用本地存储或模块的情况下在浏览器刷新时保持Redux状态?

是否可以在不使用本地存储或模块的情况下在浏览器刷新时保持Redux状态?,redux,redux-saga,redux-router,Redux,Redux Saga,Redux Router,我正在查看一个需要扩展的应用程序,当我刷新浏览器时,某些路由不会丢失状态,而其他路由则会丢失状态。我查找了本地存储和模块(如us redux),但这些模块都没有实现。比较routes和sagas中的代码,并没有显示有效路由之间的任何明显差异(保持状态)和那些不保持状态的 有没有其他方法可以持久化状态?您可以将状态的JSON表示形式持久化到cookie中。这是我以前看到的操作。如果您导航到某个路由并使用react router传递状态,根据您使用的浏览器,该状态对象将是persisted-thro

我正在查看一个需要扩展的应用程序,当我刷新浏览器时,某些路由不会丢失状态,而其他路由则会丢失状态。我查找了本地存储和模块(如us redux),但这些模块都没有实现。比较routes和sagas中的代码,并没有显示有效路由之间的任何明显差异(保持状态)和那些不保持状态的


有没有其他方法可以持久化状态?

您可以将状态的JSON表示形式持久化到cookie中。这是我以前看到的操作。

如果您导航到某个路由并使用
react router
传递
状态
,根据您使用的浏览器,该
状态
对象将是persisted-through-page-refresh.

您可以对状态进行URL Base64编码,并将其作为参数放入URL中

我确信有一个NPM包需要寻找,下面是一个使用以下内容的示例:

{用户:user1} 变为eyB1c2VyOiB1c2VyMSB9

然后,您可以在浏览器URL中设置它,如URL.com/?context=eyB1c2VyOiB1c2VyMSB9


这应该通过刷新保持,并且可以从ComponentDidMount生命周期中设置回组件的状态

我最终解决了这个问题,将全局sagas导入到“页面组件”sagas中