Проверка Да на основе другого необязательного поля - PullRequest
0 голосов
/ 06 февраля 2020

Я строю форму в React, используя Formik и React- bootstrap, и я использую Yup для проверки формы.

У меня есть 2 поля, скажем, FieldA и FieldB. FieldA не требуется, но FieldB требуется, если FieldA не является пустым.

FieldA является текстовым полем, в то время как FieldB является множественным выбором. Мое правило проверки для FieldB должно быть:

FieldA !=='' ? FieldB is required : do nothing

1 Ответ

0 голосов
/ 06 февраля 2020

Попробуйте это:

const schema = Yup.object().shape({
       FieldA: Yup.string(),
       FieldB: Yup.string()
        .when('FieldA', {
          is: (FieldA) => FieldA.length > 0,
          then: Yup.string()
            .required('Field is required')            
        })
    });
...