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

问题描述 投票:0回答:3

我正在寻找一个我需要扩展的应用程序,当我刷新浏览器时,某些路由不会丢失状态,而其他路由器,我寻找本地存储和模块,例如我们redux-persist,但没有一个已经实现,比较路线和传奇中的代码在工作(保持状态)的路线和不工作的路线之间没有任何明显的区别。

还有其他方法来坚持国家吗?

redux redux-saga redux-router
3个回答
0
投票

您可以将状态的JSON表示持久化为cookie。这是我以前见过的事情。


0
投票

如果你导航到一个路线并使用state传递react-router,根据你使用的浏览器,state对象将通过页面刷新持久化。


0
投票

您可以URL Base64编码状态并将其作为参数放入URL中。

我确信有一个NPM包需要查找,这里有一个例子:https://www.browserling.com/tools/json-to-base64

{user:user1}变为eyB1c2VyOiB1c2VyMSB9

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

这应该通过刷新持续存在,并且可以从ComponentDidMount生命周期重新设置为组件的状态

© www.soinside.com 2019 - 2024. All rights reserved.