Tho*_*zat 8 state reducers reactjs redux
作为一个Redux初学者,考虑到(一个更大的应用程序)的想法,我想象一个类似于以下的根减速器:
const rootReducer = combineReducers({ accounting, crm, sales })
Run Code Online (Sandbox Code Playgroud)
在这种情况下,应用程序状态将包含accounting,crm和sales,即使用户仅使用应用程序的一部分.这可能是有利的,例如在会计和CRM之间来回切换时作为缓存,但您可能不希望保留所有已打开的视图的所有数据,即没有任何修剪的完整可能的状态树,在应用程序中永远或甚至在加载时将整个树初始化为其初始状态.
是否有解决这个问题的习语,模式或图书馆,或者我遗失了什么?
作为解决保留所有数据的部分解决方案,我想象一些事情,比如在导航离开应用程序的某些部分时将状态的一部分重置为其初始状态,给出一些声明性规则,例如:
accounting = {}(间接地,通过诸如的动作ACCOUNTING_LEAVING)<Accounting/>componentWillUnmountcrm.mail = {}时删除/设置<MailEditor/>componentWillUnmount我没有看到以任何方式清理国家的例子.许多"list + detail view"示例存储状态{ list: [...], detail: {...} },但是当切换到详细视图时,列表既不清空也不清空或删除.我很快就会回到列表视图,但是在没有释放数据的情况下使用应用程序9到5时就不行了.
一些相关的想法:
总体而言,如何组织状态,何时更新状态以及更新状态的方法取决于您自己。Redux只是为执行更新的过程提供了一种模式和规则。
| 归档时间: |
|
| 查看次数: |
5339 次 |
| 最近记录: |