在不同级别上进行Yup条件验证

时间:2019-10-15 19:51:47

标签: javascript formik yup

我正在使用带有Yup验证的formik,并且我想在字段位于形状的不同级别的地方执行验证。

这是我到目前为止尝试过的方法,似乎没有用。

const conditional = Yup.object().shape({
  signup: Yup.object().shape({
    callingFor: Yup.string(),
    person: Yup.object().shape({
      firstName: Yup.string()
        .when('callingFor', {
          is: (callingFor) => callingFor !== 'Myself',
          then: Yup.string().required('First Name is required')
        })
    })
  })
})

我想发生的事情是,当用户从选择输入中选择“我自己”时,我希望输入名字是必需的,否则不需要。

0 个答案:

没有答案