Reputation: 9477
In my Node application I use @hapi.Joi package for validations. I have the following code.
export function validateUser(user) {
const schema = Joi.object({
firstName: Joi.string().min(1).max(20).required(),
lastName: Joi.string().min(1).max(20).required(),
email: Joi.string().email().max(50).required(),
mobile: Joi.string().min(8).max(12).required(),
password: Joi.string().min(8).max(16).required(),
confirmPassword: Joi.ref('password'),
});
return schema.validate(user);
}
But this doesn't check if the confirmPassword is required. I tried Joi.ref('password').required(). But it gives me an error. How can I solve this??
Upvotes: 3
Views: 4110
Reputation: 149
For future reference
password: Joi.string().required(),
confirmPassword:Joi.string().required().valid(Joi.ref('password')),
Upvotes: 8
Reputation: 7949
You can use Joi.any().valid() with Joi.ref():
confirmPassword: Joi.any().valid(Joi.ref('password')).required().options({ language: { any: { allowOnly: 'must match password' } } })
Upvotes: 0