繁体   English   中英

为复杂的关系域模型构建 Redux 状态

[英]Structuring Redux state for complex relational domain model

考虑以下典型的 CRUD 应用程序:

数据层

实体之间具有一对一、一对多和多对多关系的关系域模型。 实体保存在关系数据库中。

服务层

服务层提供 REST API 处理实体上的GETPOSTPUTDELETE方法以执行业务事务。

客户端状态层

客户端状态由 Redux 状态容器管理。 Redux 存储数据层中实体的表示以及它们上的待处理事务。 Redux 中间件用于更卫生且更易于推理代码。

表现层

UI 是使用 React 和客户端渲染来实现的。 组件内部状态用于次要状态管理,作为使用更大笔刷(Redux 操作)启动事务的“前奏”。

为复杂域模型构建 Redux 状态、reducer、动作和订阅的最佳方法是什么? 当然,最大限度地减少代码重复,同时对实体启用松散耦合和独立操作? 此外,管理组件内部状态的“未保存的更改”和验证逻辑是否更好?

要在 Redux 中管理关系域,请尝试normalized-reducer 它是一个高阶reducer,它采用描述关系的模式,并返回一个reducer、动作和选择器,让您相应地写入/读取。 它还可以轻松地与 Normalizr 和 Redux Toolkit 集成。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM