导入Yup验证后,表单提交不起作用

时间:2020-09-12 13:47:58

标签: javascript reactjs validation formik yup

我从外部文件导入的验证正在运行。但是,表单提交功能不起作用。

我将验证设置如下并导出。

import * as Yup from 'yup';      
const validationSchema = Yup.object().shape({
      mail: Yup.string()
        .email('Lütfen geçerli bir e-posta adresi giriniz!')
        .required('Boş bırakılamaz.'),
      password: Yup.string()
        .min(8, 'Şifreniz en az 8 karakter olmalıdır.')
        .required('Boş bırakılamaz.'),
    });
export default ValidationSchema;

我以这种方式导入并与Formik一起使用。

 import validationSchema from './ValidationSchema';

  <Formik
            initialValues={{ mail: '', password: '' }}
            validationSchema={validationSchema}
            onSubmit={handleSubmit}
          >
            {({ errors, touched }) => (

这是验证的工作方式。但是,提交表单时,handleSubmit函数不起作用。

2 个答案:

答案 0 :(得分:0)

我认为您的验证正在中断。请检查您的邮件和密码字段是否符合验证条件。

答案 1 :(得分:0)

如果未提交表单,则说明您未正确调用handleSubmit 您可以在单击按钮时使用此语法进行调用 onPress={() => handleSubmit()}