0

我是 Redux Form 的新手,在弄清楚如何设置特定流程时遇到了一些问题。所以我有一个创建新用户的表格。在此表单上,我有一个按钮,管理员单击该按钮可将用户添加到特定组织(用户模型与组织 ID 相关联 - 用户属于组织)。单击该按钮时,会弹出一个模式窗口,允许用户搜索组织列表并选择特定组织。管理员在模式中选择组织后,我想在原始新用户表单的禁用文本字段中显示组织名称。这是我的困境。提交表单时,我想提交组织 ID,而不是组织名称。

我知道我可以通过几种不同的方式实现这一点,但我想知道其他人认为解决这个问题的最佳方法是什么?在模式中单击组织时,我是否应该更改 selectedOrgId 的状态,然后在提交表单时将该状态传递到我的 createUser 操作中?或者我应该在表单上包含一个隐藏的输入字段并将值设置为等于 this.state.selectedOrgId ,然后通过表单道具提交organizationId?

有没有一种更简单的方法可以使用我完全缺少的 Redux Form 来实现这一点?

4

1 回答 1

1

如果你不介意提交组织名称,你可以有你的模态

dispatch(change('userForm', 'organization', { id: 7, name: 'Acme, Inc.' }))

在它关闭之前,然后让禁用的输入为"organization.name". 你不需要任何隐藏的输入,因为这个概念在 Redux Form 中没有意义

如果你厌恶深层物体,你可以

dispatch(change('userForm', 'organizationId', 7))
dispatch(change('userForm', 'organizationName', 'Acme, Inc.'))
于 2016-07-08T08:10:49.690 回答