Yan*_*aim 8 reactjs react-router redux react-router-redux
我正在使用React + Redux,在阅读了react-router-redux和redux-router之后,在阅读了Dan Abramov的回答后,我决定使用"vanilla"react-router(我不关心时间旅行等等)这点).
剩下的唯一未决问题是如何处理不同路线的状态.每个路径子树在我的应用程序中可以是一个不同且独立的部分(特别是当它变大时).拥有一家商店来处理所有路线/页面仍然是一个好习惯吗?我(至少)不应该为每条主要路线路径设置不同的商店/州吗?
我认为路线应该是某种无国籍和独立的,这意味着如果我直接进入我的一个链接,它应该工作,并且不会知道其他兄弟路线.我应该把它反映到我的商店吗?
编辑
经过一番思考,我想使用不同的减速器+"CombineReducers"就可以了.我唯一需要验证的是,在导航时,以前的路线状态不会持续存在
验证以前路由的状态不会持续存在的可能解决方案之一:
当用户在页面之间导航时,每个路由中的顶级组件都会安装和卸载。您可以使用它们的生命周期方法发送任何 redux 事件来清理您的状态。
例如发送CLEAN_STATE
自componentWillUnmount
. 您应该在顶级减速器中捕获此事件并从中返回初始状态。为此,您可以手动调用所有嵌套的减速器作为undefined
状态参数。在这种情况下,每个减速器都会返回其初始状态。
归档时间: |
|
查看次数: |
1289 次 |
最近记录: |