在最终表单中更新表单值之前要求用户确认

时间:2019-07-18 05:27:56

标签: javascript reactjs react-final-form final-form

我正在使用react-final-form,并且具有2个无线电字段(是/否)。当“是”是当前值并且用户选择“否”时,我想显示一个模态,要求用户确认。如果用户取消,则该值应保持不变;如果用户确认,则应更新。

对于当前版本的react-final-form或final-form,有什么办法可以做到这一点?我看了一下文档并注意到beforeSubmit,但是没有看到类似beforeChange

的东西。

1 个答案:

答案 0 :(得分:1)

您必须自己拦截更改。

<Field name="whatever">
  {({ input }) => (
    <input {...input} onChange={event => {
      if(showConfirmDialog()) {
        input.onChange(event); // pass event through to RFF
      }
    }}/>
  )}
</Field>