【发布时间】:2017-04-05 04:41:56
【问题描述】:
我无法让这个 joi 验证返回所有错误,就像它对默认错误所做的那样。
所以我在这里为每个字段设置单独的自定义错误:
const schema = Joi.object().keys({
a: Joi.string().error(new Error('must be string')),
b: Joi.number().error(new Error('must be number'))
});
然后当 abortEarly 设置为 false 进行验证时,它只返回将遇到的第一个错误。
Joi.validate({a: 1, b: false}, schema, {abortEarly: false})
返回的错误是这样的,
{ error: [Error: must be string], value: { a: 1, b: false }}
什么时候应该以某种方式返回所有错误。
我是在错误地使用 abortEarly,还是需要执行一个流程来返回所有自定义错误?提前感谢您的任何回复。
【问题讨论】:
标签: javascript node.js hapijs joi