我一直在设置 redux 表单的服务器端验证。我有一个注册表单并完美地执行了客户端验证,但是在服务器端验证中,我无法理解如何使用相应的输入字段显示来自服务器的错误消息。
API 请求
const createMemberRegistration = user => {
return dispatch => {
dispatch({ type: POST_REQUEST });
processMemberRegistration(user)
.then(user => {
dispatch({ type: REGISTRATION_SUCCESS });
dispatch(reset('memberregistration'));
})
.catch(err => {
dispatch({ type: REGISTRATION_ERROR,payload:err });
});
};
};
零件
// submit button
submitSignup(values) {
var registerfields = JSON.stringify({
first_name: values.firstname.trim(),
last_name: values.lastname.trim(),
email: values.email.trim(),
password: values.password.trim()
});
if (registerfields) {
this.props.createMemberRegistration(registerfields);
}
}
//binding with redux form
const reduxmemberregistration = reduxForm({
form: "memberregistration",
validate:isvalidMemberRegistration,
asyncValidate,
enableReinitialize: true
})(MemberRegistration);
异步函数
卡在这里做什么以及如何验证各自的领域
const asyncValidate = (values, dispatch, props) => {
return new Promise((resolve, reject) => {
if(values.email){ // i get the value from the form,so what to do here?
// so should i need to send request all the time to server for each
field for validation or what?
}
}
});
};