【发布时间】:2020-07-29 01:24:59
【问题描述】:
我在一个 joi 对象中有 2 个字段,我们称它们为“a”和“b”,其中“a”是一个对象,“b”是一个对象数组。我想要求 2 个字段中的 1 个,但不允许同时使用,有没有办法用 joi 做到这一点?
【问题讨论】:
我在一个 joi 对象中有 2 个字段,我们称它们为“a”和“b”,其中“a”是一个对象,“b”是一个对象数组。我想要求 2 个字段中的 1 个,但不允许同时使用,有没有办法用 joi 做到这一点?
【问题讨论】:
你应该使用xor
定义一组键之间的排他关系,其中一个是必需的,但不是同时
https://github.com/hapijs/joi/blob/master/API.md#objectxorpeers-options
Joi.object().keys({
a: Joi.object(),
b: Joi.array()
}).xor('a', 'b')
【讨论】: