问题描述
我有以下作为Formik的表单域类型:
interface FormFields {
groups: string[];
}
我正在尝试传递一个YUP架构来验证上面的内容:它可以是空数组(必须定义),但也可以包含字符串。
以下选项不起作用:
const schema = Yup.object({
groups: Yup.array().defined()
}).defined();
我哪里错了?
推荐答案
我发现空数组是真的。并在最终找到YUP文档here之后。我使用了Yup.array()
.min(num, message)
方法
const validationSchema = Yup.object().shape({
stringArray: Yup.array().min(1, messageHere);
});
您还可以使用array().of()
const validationSchema = Yup.object().shape({
stringArray: Yup.array().of(Yup.string());
});