如何解决是的 + useFormik - 基于某些参数的条件必填字段
SCHEMA = object().shape({
...
someField: string().required(validation_keys.required),...
});
我在我的组件中使用了 useFormik
:
const formik = useFormik({
initialValues: values,onSubmit: ...,validationSchema: SCHEMA,});
我正在寻找一种将参数传递给我的 SCHEMA 的方法,因此当参数为 someField
时需要 true
...我阅读了上下文,也尝试这样做使用 when()
,但这些都不适合我...
我的目标是基于组件 prop 验证 someField
,而不是来自 formik 的其他字段。类似于下面的例子:
validationSchema={yup.object().shape({
someField: yup
.string()
.when("xxx",{
is: true,then: yup.string().required("required"),otherwise: yup.string(),})
})
}
xxx
应该传递给我使用 useFormik 的 React 组件中的验证模式
解决方法
你可以这样做。
var now = new Date();
if (now.getMonth() == 11) {
var current = new Date(now.getFullYear() + 1,now.getDate());
} else {
var current = new Date(now.getFullYear(),now.getMonth() + 1,now.getDate());
}
Here 工作代码和盒子。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。