在多个字段上进行Formik验证

时间:2019-09-07 04:39:28

标签: reactjs validation formik

我有一个包含多个输入的表单,我不想对每个字段进行验证,但是如果所有字段均为空,则它会在表单顶部显示错误。有什么办法可以用Formik做到吗? 我在看https://jaredpalmer.com/formik/docs/api/formik#validate-values-values-formikerrors-values-promise-any中的“验证?:(值:值)=> FormikErrors | Promise”,但是我不知道如何编写错误对象以及在哪里显示错误,因为我不想在特定字段下显示的错误。

1 个答案:

答案 0 :(得分:1)

Formik具有onSubmit函数,您可以检查值并查看是否存在填充的输入并根据该输入显示错误,并防止用户提交空表单

,当然,在Formik渲染部分中,您可以访问values属性,如果值为空,则可以显示错误。但我猜它没有最佳的用户体验

<Formik
      onSubmit={(values) => {
         //here you can read values object and set your custom error in state and then show to the users.
      }}
    >
{({ handleChange, errors, values, isSubmitting, handleSubmit }) => (
        <Form>
          // you have access values here too.
          ...
        </Form>