我在node.js中使用hapi / joi进行验证。 我希望正则表达式仅在字段不为空时才起作用。
我该怎么做?
password: Joi.string().required().regex(/^[a-zA-Z0-9]{3,30}$/).error(errors => {
errors.forEach(err => {
switch (err.type) {
case "any.empty":
err.message = `${err.context.label}_${err.context.label} is required`;
break;
case "string.regex.base":
err.message = `${err.context.label}_Invalid characters in ${err.context.label}`;
break;
default:
break;
}
});
return errors;
})