【发布时间】:2022-01-12 19:09:27
【问题描述】:
我正在尝试使用 joi 验证方法,但我无法访问从对象返回的路径或消息 我试图关注一些视频以了解更多但没有影响整个问题是我无法访问 joi 对象,尽管它得到了正确的安慰
state ={
username : "",
password : "",
errors :{}
};
schema =Joi.object().keys({
username: Joi.string().required(),
password:Joi.string().required()
})
validate = ()=>{
const errors = {};
const res = Joi.validate(this.state,this.schema,{abortEarly:false});
console.log(res);
if (res.error===null ){
this.setState({errors:{}});
return null;
}
// this is where i get the error and can't access it
for (const error of res.error.details){
errors[error.path] = error.message;
}
this.setState({errors});
}
handleSubmit=(e)=>{
e.preventDefault();
const errors = this.validate();
if(errors){return}
else{
//call backend
console.log("Passed");
}
}
【问题讨论】:
标签: javascript reactjs joi