Joi验证两个字段的级联长度

时间:2019-10-17 14:50:38

标签: joi

我必须验证两个字段的总长度。

const schema = {
  body: Joi.object().keys({
    fieldOne: Joi.string().required()
    fieldTwo: Joi.string().required()
  })
};

我要检查的是

`${fieldOne || ''} ${fieldTwo || ''}`.trim().length < 30 

Joi可以实现吗?

1 个答案:

答案 0 :(得分:2)

您可以输入第三个字段。这是两者的结合,最大长度为30。因此,请验证各个字段以及两者的组合。

myObject.fieldOneTwo = `${fieldOne || ''} ${fieldTwo || ''}`.trim()
const schema = {
  body: Joi.object().keys({
    fieldOne: Joi.string().required(),
    fieldTwo: Joi.string().required()
    fieldOneTwo: Joi.string().limit(30, 'utf8').required()
  })
};

或者,您可以将第三个字段设为其他两个字段的长度,并检查它是否为数字<30。