使用外部架构的joi进行验证



因此,我试图验证在特定场景下是否需要字段。像这样:

cake: Joi.object().keys({
flavor: Joi.string().max(45).required(),
price: Joi.string().length(2).required(),
topping: Joi.string().length(2).required()
})

在同一个模式中,我有:

authentication: Joi.object().keys({
password: Joi.string().max(45).required(),
login64: Joi.string().max(45).required()
})

我想做一个验证,比如:

authentication: Joi.object().keys({
password: Joi.string().max(45).required(),
login64: Joi.string().max(45).when('cake.flavor', {
is: 'chocolate',
then: Joi.required()

}})

如果蛋糕的味道是巧克力的话,我想做一个需要登录64。但似乎什么都不起作用。。。

Joy引用默认情况下是相对于当前值的父级的,在您的情况下是authentication。您需要向上移动几个级别(...(才能达到cake:

login64: Joi.string().max(45).when('...cake.flavor', {
is: 'chocolate',
then: Joi.required()
})

相关内容

  • 没有找到相关文章

最新更新