我正在使用React制作表单组件,并希望使用Redux存储表单和字段的状态。
因此,我有一个表单reducer和一个formField reducer。
一开始,我按照我的直觉尝试将formField reducer嵌套在form reducer中。这基本上意味着在form reducer和formField reducer中都有与formField相关的switch case,这感觉有点混乱(重复代码)。
因此,我在文档中阅读更多信息后发现,建议对状态进行规范化。因此,我取消了嵌套的formFields,并将它们放在与表单相同的级别上。
这使得reducer变得整洁,但现在检索特定表单的formFields却感觉很糟糕。我基本上每次都要循环遍历所有的formFields,只返回具有正确“formId”参数的那些。
Redux文档中指出应将状态视为规范化数据库,但他是否忘记了您无法查询结果的奢侈品?
我错过了什么吗?有推荐的方法来解决这个问题吗?
因此,我有一个表单reducer和一个formField reducer。
一开始,我按照我的直觉尝试将formField reducer嵌套在form reducer中。这基本上意味着在form reducer和formField reducer中都有与formField相关的switch case,这感觉有点混乱(重复代码)。
因此,我在文档中阅读更多信息后发现,建议对状态进行规范化。因此,我取消了嵌套的formFields,并将它们放在与表单相同的级别上。
这使得reducer变得整洁,但现在检索特定表单的formFields却感觉很糟糕。我基本上每次都要循环遍历所有的formFields,只返回具有正确“formId”参数的那些。
Redux文档中指出应将状态视为规范化数据库,但他是否忘记了您无法查询结果的奢侈品?
我错过了什么吗?有推荐的方法来解决这个问题吗?