【发布时间】:2016-06-04 23:47:36
【问题描述】:
我正在使用 React 制作一个表单组件,并希望使用 Redux 存储表单和字段状态。
所以我有一个 form reducer 和一个 formField reducer。
我首先按照自己的直觉尝试将 formField reducer 嵌套在 form reducer 中。这基本上意味着在 form reducer 和 formField reducer 中都有与 formField 相关的 switch case。
这感觉有点乱(重复代码),所以我在文档中阅读了更多内容,发现建议对状态进行规范化。所以我把嵌套的formFields拿掉了,和forms放在同一个层级。
这使得reducer 变得干净整洁,但是现在检索特定表单的formFields 感觉很糟糕。我基本上每次都遍历所有的formFields,并且只返回具有正确“formId”参数的那些。
Redux 文档声明您应该将状态视为规范化数据库,但他是否忘记了您没有查询结果的奢侈?
我在这里错过了什么吗?解决此问题的推荐方法是什么?
【问题讨论】:
-
我认为这是一个有趣的问题/话题,但是如果您提供一些示例代码会容易得多。
-
这更像是一场辩论而不是一个问题,我不确定你能否得到一个明确的行动,但是是的,为了准确理解你所指的内容,一些代码会很有用。
标签: nested redux normalize reducers