reactjs – React Redux Router – 我应该为所有页面/组件使用一
我正在使用React Redux,在阅读了大约
react-router-redux和
redux-router之后,在阅读了
Dan Abramov’s answer之后,我决定使用“vanilla”react-router(此时我不关心时间旅行等).
剩下的唯一未决问题是如何处理不同路线的状态.每个路径子树在我的应用程序中可以是一个不同且独立的部分(特别是当它变大时).拥有一家商店来处理所有路线/页面仍然是一个好习惯吗?我(至少)不应该为每条主要路线路径设置不同的商店/州吗? 我认为路线应该是某种无国籍和独立的,这意味着如果我直接进入我的一个链接,它应该工作,并且不会知道其他兄弟路线.我应该把它反映到我的商店吗? 编辑 经过一番思考,我想使用不同的减速器“CombineReducers”就可以了.我唯一需要验证的是,在导航时,以前的路线状态不会持续存在
关于验证以前路由状态是否仍然存在的可能解决方案:
当用户在页面之间导航时,每个路径中的顶级组件都是安装和卸载.您可以使用其生命周期方法发送任何redux事件来清理您的状态. 例如,从componentWillUnmount发送CLEAN_STATE.您应该在它的顶级reducer end return初始状态中捕获此事件.要执行此操作,您可以手动调用所有嵌套的Reducer,并将undefined作为状态参数.在这种情况下,每个reducer将返回它的初始状态. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |