如何在路线变化期间“冻结”还原状态?

时间:2016-06-17 16:35:11

标签: javascript reactjs redux

我的应用使用react-router,redux,react-redux。假设我正在查看呈现/about组件的AboutPage路由。现在我想导航到/news。现在,当路由更改发生时,新组件将挂载,从而触发异步操作以获取数据。在获取该数据的同时,我正在查看NewsPage组件,但需要加载微调器。

我正在尝试做的是保持AboutPage组件上,同时发生所有数据提取。我已经在react-router的onEnter挂钩期间成功实现了数据获取。问题是,如果AboutPage碰巧使用与NewsPage相同的任何redux状态,您将在获取和更新数据时看到渲染更改。

我想要的是以某种方式“冻结”当前路线,同时在幕后发生动作/状态变化,然后在准备就绪时渲染新路线组件(同时用户将看到通过{加载反馈) {3}})。

所以要么我需要完全取消订阅状态更改中的当前路由组件或以其他方式锁定内容。不确定redux是否会暴露我需要的东西,但好奇其他人是否解决了这个问题。

0 个答案:

没有答案