导入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函数不起作用。

解决方法

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

,

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...