我正在使用Formik构建简单的表单。
在我的validation
方法中,我正在检查是否已在该字段中输入名称。如果还没有,那么我将打印到控制台中-运行正常。
validate={values => {
let errors = [];
if (!values.name) {
console.log("no name entered");
errors.name = "First name required";
}
//check if my values have errors
return errors;
}}
但是,满足上述条件时,<ErrorMessage />
组件什么也不做:
<Field
type="text"
name="name"
placeholder="First Name"
/>
<ErrorMessage name="name" />
这是为什么?
答案 0 :(得分:3)
问题是您拥有let errors = [];
而不是let errors = {};
。