使用 Yup 验证单选框或复选框值

问题描述

我正在使用两个库,分别是 Formik 和 Yup。并尝试通过存储在单选框(复选框)上的值进行验证,但似乎我在谷歌上找不到任何可以检查实际值的内容。我可以使用名称值进行验证,但有没有办法通过查看值来检查验证?我将在下面提供示例。

  const initialValues = {
  A: "",B: "",C: [],};

const onSubmit = (values) => {
  console.log(values);
};

const validationSchema = Yup.object({
  A: Yup.string().required("required"),B: Yup.string().required("required"),C: Yup.array().min(1,"Must be selected"),});

这里是 react 的返回

return (
    <>
      <Formik
        enableReinitialize={true}
        initialValues={initialValues}
        validationSchema={validationSchema}
        onSubmit={onSubmit}
        render={(props) => <TreatmentView {...props} data={data} />}
      />
    </>
  );

这是下面的渲染视图

enter image description here

我想将该逻辑存储在validationSchema 上。所以再次,我想添加一个验证,其中名称为“C”且值为“4”的复选框只能在选择名称为“B”且值为“3”的单选按钮时选中。我确实查看了 YUP 的文档并尝试使用 .value 但似乎它不起作用..

谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...