Reactjs 重复表单清除字段值
我使用redux根据值隐藏和显示组件。 当我在选项之间切换时,我希望清除这些值 在隐藏和显示的字段之间切换时,如何清除状态中的值 验证每个字段的推荐方法是什么 是否可以从状态中完全删除该字段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
<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在此处提到的功能。我知道你可能很忙,所以如果你需要帮助,我非常乐意帮忙。