代码之家  ›  专栏  ›  技术社区  ›  JmJ

Joi-可以引用多个值吗?

  •  0
  • JmJ  · 技术社区  · 6 年前

    在文档中很难找到关于这一点的任何信息——有可能引用多个值吗?

    假设我有一个包含3个数字的模式( a , b , c ),是否可以设置 max 财产 C 基于 A. 和 B .大致如下:

    joi.object().keys({
      a: joi.number(),
      b: joi.number(),
      c: joi.number().max(joi.ref('a') + joi.ref('b'))
    })
    
    0 回复  |  直到 6 年前
        1
  •  0
  •   Mohammad Ali Rony    6 年前

    作为参考,使用多个值 expression 喜欢

    const schema = joi.object().keys({
      a: joi.number(),
      b: joi.number(),
      c: joi.expression("{{a +b}}"),
    });
    console.log(schema.validate({ a: 400, b: 300, c: 700 }));