如何将字段标签传递给 yup 模式?

问题描述 投票:0回答:1

我发现自己重复将字段标签传递给 yup 模式和 formik 表单上的字段:

var schema = Yup.object({ foo: Yup.string().required().label("First name") });
...
<Formik validationSchema={schema} ...>
    <TextField name="firstName" label="First name"/>
</Formik>

如果我可以使用 formik 注册字段元数据,然后以某种方式让 Yup 可以使用该元数据,那不是很棒吗? 例如。

validationSchema
属性接受一个函数。如果此字段元数据可作为 validSchema 的参数 - 然后我可以使用这些标签构建架构。

另一种方法是在对象中声明标签,然后让 yup 模式和我的字段从那里查找它(例如,通过自定义上下文)。

但我没有看到可能有更简单的方法。

formik yup
1个回答
0
投票

调用该方法需要按顺序: 而不是

foo: Yup.string().required().label("First name")
您需要使用
foo: Yup.string().label("First name").required()

© www.soinside.com 2019 - 2024. All rights reserved.