是的,电子邮件验证不区分大小写

Yup validation for email to be case insensitive

我有一个电子邮件数组和一个电子邮件文本字段,用户可以在其中输入电子邮件,但是我需要输入的内容与数组中的任何这些电子邮件都不同,我使用了 Yup.notOneOf 但我仍然缺少不区分大小写,所以我需要不同的电子邮件。我已经尝试为电子邮件创建小写或大写数组,但如果用户交替写入,我的问题没有解决

email: Yup.string()
      .email("Invalid Email.")
      .notOneOf(lowerEmails, "Email already exists.")
      .notOneOf(upperEmails,"Email already exists")
      .required("Required"),

您可以使用.test做任何您喜欢的事情。在你的情况下,应该这样做:

email: Yup.string()
      .email("Invalid Email.")
      .required("Required"),
      .test(
         'existsCheck',
         'Email already exists',
         value => !lowerEmails.includes(value.toLowerCase())
      )