我正在使用Formik FormArray对象并尝试使用验证似乎不起作用

问题描述

  1. 即使进行了简单的必需验证,仍然允许提交空字段
  2. 我不知道错误消息是否显示

我的模式:

const formDateSchemas = Yup.object().shape({
  formDate: Yup.object().shape({
    corporate: Yup.array()
      .of(
        Yup.object().shape({
          companyName: Yup.string().required(),comporateCNPJ: Yup.string().required(),comporateName: Yup.string().required(),comporateResponsible: Yup.string().required(),comporateSegment: Yup.string().required(),})
      )
      .required(),partner: Yup.array()
      .of(
        Yup.object().shape({
          partnerCPF: Yup.string().required(),partnerEmail: Yup.string().required(),partnerName: Yup.string().required(),partnerTel1: Yup.string().required(),partnerTel2: Yup.string().required(),contact: Yup.array()
      .of(
        Yup.object().shape({
          contactName: Yup.string().required(),contactCPF: Yup.string().required(),contactemail: Yup.string().required(),contacttel1: Yup.string().required(),contacttel2: Yup.string().required(),}),});

我的初始值:

   initialValues={{
              formDate: {
                corporate,partner,contact,},}}

公司,合作伙伴和联系人都是数组。

const partner = [
  {
    id: 0,partnerCPF: "partnerCPF",partnerEmail: "partnerEmail",partnerName: "partnerName",partnerTel1: "partnerTel1",partnerTel2: "partnerTel2",];

出现错误消息,但是对于整个数组来说是通用的,但对于数组的内部元素却不是。

看:

{
  "corporate": "corporate is a required field","partner": "partner is a required field","contact": "contact is a required field"
}

在填写字段后,一般错误仍然存​​在。并且每个字段的错误都不会出现。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

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