Forms reduxForm v5.3.1非受控/受控警告打开复选框

Forms reduxForm v5.3.1非受控/受控警告打开复选框,forms,reactjs,redux-form,Forms,Reactjs,Redux Form,因此,以下是警告: Warning: UserInviteForm is changing an uncontrolled input of type checkbox to be controlled. 在查看reduxForm v5和其他版本的票证之后,我似乎收到了此警告,因为字段的初始值未定义,因此需要使用字段值| |“”初始化输入值属性 再进一步,受控复选框需要将checked属性设置为一个值 因此,我的假设是,清除警告的方法是以以下两种方式之一写入输入标记: <input

因此,以下是警告:

Warning: UserInviteForm is changing an uncontrolled input of type checkbox to be controlled.
在查看reduxForm v5和其他版本的票证之后,我似乎收到了此警告,因为字段的初始值未定义,因此需要使用字段值| |“”初始化输入值属性

再进一步,受控复选框需要将checked属性设置为一个值

因此,我的假设是,清除警告的方法是以以下两种方式之一写入输入标记:

<input
  {...isPrimary}
  value={isPrimary.value || ''}
  type="checkbox"
>


为了更好地衡量,我还尝试了
checked={isPrimary.checked | | false}
value={isPrimary.value | | false}
以及两者的组合

我甚至试着在组件挂载上设置
isPrimary
的checked和value属性,但仍然没有任何东西可以消除警告

另外,我想补充一点,我知道有一个reduxForm v6已经发布,但这是我们正在努力修复的已部署应用程序的当前版本,reduxForm v6将在我们的应用程序的未来部署版本中发布


有人对解决这个问题有什么见解吗?

我又做了一件事,找到了解决办法

我可以通过在连接reduxForm时设置字段的初始值,然后将输入值设置为初始值来实现这一点

UserInviteFormContainer = reduxForm({
 form: FORM_ID,
   fields: FIELD_NAMES,
   initialValues: {
     isPrimary: false,
   },
   validate,
})(UserInviteFormContainer);


<input
 {...isPrimary}
 value={isPrimary.initialValue || ''}
 type="checkbox"
>
UserInviteFormContainer=reduxForm({
表格:表格编号,
字段:字段名称,
初始值:{
第一:错,
},
验证
})(用户输入格式容器);
UserInviteFormContainer = reduxForm({
 form: FORM_ID,
   fields: FIELD_NAMES,
   initialValues: {
     isPrimary: false,
   },
   validate,
})(UserInviteFormContainer);


<input
 {...isPrimary}
 value={isPrimary.initialValue || ''}
 type="checkbox"
>