表格提交后,Formik Field不会清算

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了表格提交后,Formik Field不会清算相关的知识,希望对你有一定的参考价值。

所以我有一个使用formik的组件,并有一个子组件来更新其中一个字段。

子组件:

 this.props.formik.setFieldValue("keywords", target.value, false);

这可以很好地获得更新的值,但在提交表单后我想清除所有字段。但不知何故,该领域的价值得以保留。

我试过了

  • Resetform
  • setFieldValue("keywords", '', false);
  • values.keywords = ''参加onSubmit活动

没有人在工作

答案

在从<Formik />返回的onSubmit prop中,您将收到与这些值关联的值和操作。在该返回内部调用重置actions.resetForm()应该可以解决您的问题。

onSubmit = {
    (v: IRegisterFormValues, a: FormikActions<IRegisterFormValues> ) => {
        AuthService.register(v.email).then(
            res => {
                a.resetForm()
            }
        )
    }
}

以上是关于表格提交后,Formik Field不会清算的主要内容,如果未能解决你的问题,请参考以下文章

Formik - 确认后如何重置表格

Formik + Yup:如何在提交前立即验证表单?

React Formik Field onChange 事件句柄

markdown 当Field更新时,Formik会更新其他值

如何使用 Material-Ui Autocomplete for Multi-Select 复选框实现 Formik 的 Field 组件?

当我提交表单并尝试更改值时,Formik + Material UI 错误