簡體   English   中英

我們可以在 formik YupValidationSchema 中添加自定義驗證嗎?

[英]Can we add custom validations in formik YupValidationSchema?

我們可以在我下面提到的 formik YupValidationSchema 中添加自定義驗證嗎?

YupValidationSchema = () => {
        return Yup.object({
             Email: Yup.string()
            .max(256, "Length exceed 256 chars")
            .matches(EMAIL_REGEXP, "Enter a valid email address")
            .required("Email is required")
})
}

我需要為電子郵件字段添加一項驗證,例如它應該接受某些域

let domainVal = companyName.some((val) => email.includes(val));
     if(!domainVal) error('Invalid')
     else  success('Valid');

有人可以幫我如何在 yupvalidationschema 中添加這個域驗證代碼嗎?

您可以使用Yup test method向您的電子郵件添加自定義驗證

基本語法: .test("test-name", "Error message", function)

return Yup.object({
             Email: Yup.string()
            .max(256, "Length exceed 256 chars")
            .matches(EMAIL_REGEXP, "Enter a valid email address")
            .required("Email is required")
            .test("email-include-domain", "Email Must include domain", (value) => companyNames.some((company) => value.includes(company));

相關 Stackoverflow 帖子: 如何讓 Yup 執行多個自定義驗證?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM