问题描述
我已经写了忘记密码的代码,然后我想使用joi库验证密码并再次输入密码。我怎样才能做到这一点。 我已经编写了这段代码,但是它抛出错误joi.string.valid不是一个函数。
我在这里使用joi库作为
const schema=joi.object({
pass:joi.string().required().label('Please Fill Password'),password:joi.string().min(8).required().label('Password must be 8 characters long'),pass2:joi.string().required().label('Please Re-enter Password'),password2:joi.string.valid(joi.ref('password')).label('passwords don\'t match'),})
let result=schema.validate({pass:pass,password:pass,pass2:pass2,password2:pass2});
if(result.error){
console.log('fd'+result.error);
response.send(result.error.details[0].context.label);
}
解决方法
您的代码中有错字。您忘记了属性()
上string()
上的password2
// missing ()
password2:joi.string.valid(joi.ref('password')).label('passwords don\'t match')
// added ()
password2:joi.string().valid(joi.ref('password')).label('passwords don\'t match')