当用户选择特定单选按钮时显示验证
Show validation when user selects specific radio button
我在 React.js
中有两个单选按钮 (yes/no),在我的项目中使用了 Formik
和 Yup
包。
我想在用户从两个选项中选择“否”选项时使用架构提供验证消息。
虽然我能够提供所需的验证器Yup
。
谁能帮我解决这个问题?
我试过下面一个,它成功了,
yup
.string()
.test("is-no", "value cannot be No", value => value !== "no")
.validate("A")
.then(data => console.log(data))
.catch(data => console.log(data.message));
此外,这是直接验证,没有以任何形式使用。
要在表单中使用它,您可以重复使用架构,但不能将 validate
用作架构的一部分。
例如,您的模式可以是,
yup.object().shape({
name: yup.string(),
yesOrNoField: yup
.string()
.test("only-yes", "Please select YES only", value => value !== "no"),
anyNumberField: yup.number().required(),
});
我在 React.js
中有两个单选按钮 (yes/no),在我的项目中使用了 Formik
和 Yup
包。
我想在用户从两个选项中选择“否”选项时使用架构提供验证消息。
虽然我能够提供所需的验证器Yup
。
谁能帮我解决这个问题?
我试过下面一个,它成功了,
yup
.string()
.test("is-no", "value cannot be No", value => value !== "no")
.validate("A")
.then(data => console.log(data))
.catch(data => console.log(data.message));
此外,这是直接验证,没有以任何形式使用。
要在表单中使用它,您可以重复使用架构,但不能将 validate
用作架构的一部分。
例如,您的模式可以是,
yup.object().shape({
name: yup.string(),
yesOrNoField: yup
.string()
.test("only-yes", "Please select YES only", value => value !== "no"),
anyNumberField: yup.number().required(),
});