我正在使用与通量架构做出反应的项目。
我有几个视图和一个名为ContextStore的商店,我将当前视图保存在状态中,这样当触发更改视图的操作时,此存储会更改其状态,主视图会监听并更改它。
但问题是,当我用F5刷新页面时,它始终会转到初始视图。
更重要的是,如果我按后退按钮,视图没有变化。
我认为我的问题是因为当我刷新主视图时再次加载初始状态。我怎么能解决它?
谢谢!
答案 0 :(得分:2)
您可能希望使用路由器来管理您的视图。这是我使用的那个:https://github.com/rackt/react-router。当您转换到不同的视图(路线)时,它会添加到历史堆栈中,以便您可以使用后退按钮。但是,我没有您需要在刷新时保留当前视图的用例,因此在任何情况下您可能需要在这些实例中使用cookie或会话存储。
答案 1 :(得分:1)
你是对的,当你点击F5你完全重置所有的javascript,ergo商店失去了它的状态。您需要使用某种存储来保存状态。经典方式是cookie,或者您可以使用包含在HTML5中的IndexedDB