如何在formik中获取子组件中的更新值和错误



我正在制作一个多步表单,我将这些步骤划分为单独的组件,并将其作为子组件在父formik组件之间传递。像这个

<FormikComponent>
<ChildStepComponent/>
</>

当我更改子组件中的输入值时,是否有方法获取Formik提供的值和错误?

这里有两种方法:

  1. 您可以在Formik表单的任何子组件中使用useFormikContext,这样您就可以访问表单中任何字段的all the values and errors

  2. 对错误使用更好的验证对象(我更喜欢使用Yup库(,它针对子组件中的所有字段。

我推荐第一个,因为您还需要values对象。下面是这个CodeSandBox中的一个例子。在那里,您可以发现内部对象使用useField来处理单个字段;提交按钮使用useFormikContext来检索所有表单值、错误和状态(以及其他有用的东西(。

最新更新