提问人:Madhava Reddy 提问时间:9/15/2023 最后编辑:Madhava Reddy 更新时间:9/15/2023 访问量:24
Joi 模式自定义验证程序未执行
Joi schema custom validator is not executing
问:
如果字段值 (name) 为空 string(''),我希望 Joi 架构返回 null。为什么以下 Joi 架构中的自定义验证器逻辑不运行?
我注意到,如果键的值为空字符串(''),则自定义验证程序不会执行。有解决此问题的办法吗?
const Joi = require('joi');
const schema = Joi.object()
.keys({
name: Joi.string().optional().trim().allow(null, '').custom((value, helpers) => {
console.log('-------------------', value)
if (value === '') {
return null;
}
return value;
}),
});
// steps to run
const input = {
name: '', // Empty string
};
const result = schema.validate(input);
console.log(input, result.value);
// expected: {name: null}
// actual: {name: ''}
答: 暂无答案
评论