我正在尝试使用Redux表单库来验证我的表单。我有一个表单部分,其中有两个字段,例如firstname
(必填)。我想在用户单击按钮时显示错误。
我这样尝试过 https://codesandbox.io/s/green-frost-414qi
const validateGeneral = general => {
console.log(general, "general");
let errors = {};
// validate address.street etc
if (general && !general.firstName) {
errors.firstName = "enter a valid street";
}
return errors;
};
const validate = values => {
console.log(values, "ddd");
const errors = {};
errors.general = validateGeneral(values.general);
return errors;
};
单击按钮时,名字为空时,应该显示错误消息。
答案 0 :(得分:0)
您应该添加redux-form提供的Field
组件的验证道具。
在上面的codesandbox示例中,如下所示添加validate prop,它将正常工作。
<Field
name={i.name}
component={i.component}
options={i.options || undefined}
type={i.type}
validate={i.validate}
/>
答案 1 :(得分:0)
您应该包括一个验证道具,如下所示,当字段为空并且单击按钮时,它将显示错误消息
const required = value =>
value || typeof value === "number" ? undefined : "Required";
<Field
name = { i.name }
component = { i.component }
options = { i.options || undefined }
type = { i.type }
validate = { required }
/>