Reactjs 重复表单清除字段值

Reactjs 重复表单清除字段值,reactjs,redux,redux-form,react-redux-form,Reactjs,Redux,Redux Form,React Redux Form,我使用redux根据值隐藏和显示组件。 当我在选项之间切换时,我希望清除这些值 在隐藏和显示的字段之间切换时,如何清除状态中的值 验证每个字段的推荐方法是什么 是否可以从状态中完全删除该字段 <div> <form> <Fields component={RadioButtonGroupField} names={['radioButtonGroup', 'nameTextField', 'nickNameTextFi

我使用redux根据值隐藏和显示组件。 当我在选项之间切换时,我希望清除这些值

在隐藏和显示的字段之间切换时,如何清除状态中的值

验证每个字段的推荐方法是什么

是否可以从状态中完全删除该字段

<div>
    <form>
      <Fields
       component={RadioButtonGroupField}
       names={['radioButtonGroup', 'nameTextField', 'nickNameTextField']}
      />
    </ form>
</div>

function RadioButtonGroupField(fields) {
    return(
      <div>
        <RadioButtonGroupComponent
          {...fields.radioButtonGroup.input}
          {...fields.radioButtonGroup.meta}
        />
        {
          (fields.radioButtonGroup.input.value === 'name' ||
          fields.radioButtonGroup.input.value === 'both') &&
          <NameTextFieldComponent
            {...fields.radioButtonGroup.input}
            {...fields.radioButtonGroup.meta}
          />
        }
        {
          (fields.radioButtonGroup.input.value === 'nickname' ||
          fields.radioButtonGroup.input.value === 'both') &&
           <NicknameTextFieldComponent
            {...fields.radioButtonGroup.input}
            {...fields.radioButtonGroup.meta}
          />
        }
      </div>
     );
  }

函数RadioButtonGroupField(字段){
返回(
{
(fields.radioButtonGroup.input.value==='name'||
fields.radioButtonGroup.input.value===='两者')&&
}
{
(fields.radioButtonGroup.input.value==='nickname'||
fields.radioButtonGroup.input.value===='两者')&&
}
);
}

为什么另一个值处于状态很重要?似乎您可以在提交时查看您的无线电值以确定要使用的其他值


但是,为了回答您的问题,您可以在您的无线电字段上放置一个
onChange
侦听器,并且(不要忘记调用
字段.radioButtonGroup.input.onChange()
)发送一个
更改(值==='name'?'nickname':'name',null)
销毁要忽略的输入值的操作。

最后一件事,向每个字段添加验证的最佳方法是什么?您可以添加验证或提供验证功能。我不清楚如何向
字段添加
字段级验证功能@erik-r你能看一下我们的评论吗。你能发表一下你对在
字段中添加验证的想法吗?哎呀,你是对的。
字段
没有字段级验证。为此,您需要验证整个记录。您认为它应该是一个功能吗?因为有几种方法可以验证@dpwrussell在此处提到的
功能。我知道你可能很忙,所以如果你需要帮助,我非常乐意帮忙。