我正在使用带有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')
})
})
})
})
我想发生的事情是,当用户从选择输入中选择“我自己”时,我希望输入名字是必需的,否则不需要。