【问题标题】:Using Joi and Node, require 1 of 2 fields but not allow both to be present使用 Joi 和 Node,需要 2 个字段中的 1 个,但不允许两者都存在
【发布时间】:2020-07-29 01:24:59
【问题描述】:

我在一个 joi 对象中有 2 个字段,我们称它们为“a”和“b”,其中“a”是一个对象,“b”是一个对象数组。我想要求 2 个字段中的 1 个,但不允许同时使用,有没有办法用 joi 做到这一点?

【问题讨论】:

    标签: node.js rest joi


    【解决方案1】:

    你应该使用xor

    定义一组键之间的排他关系,其中一个是必需的,但不是同时

    https://github.com/hapijs/joi/blob/master/API.md#objectxorpeers-options

    Joi.object().keys({
        a: Joi.object(),
        b: Joi.array()
    }).xor('a', 'b')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-22
      • 2018-11-29
      • 1970-01-01
      • 2018-06-26
      • 2017-04-22
      • 1970-01-01
      • 2015-05-06
      • 1970-01-01
      相关资源
      最近更新 更多