Join嵌套对象操作



我有一个类型为的Join模式

const schema = Joi.object().keys({
a: Joi.string(),
b: Joi.string(),
c: Joi.string()
})

现在,我想添加一个条件,即如果a不存在,那么bc都应该存在。我知道有像object.and()object.or()这样的操作,但我不确定如何在我的情况下使用这些操作,即a or (b and c)。谢谢

您将希望使用Joi的替代方案和条件功能,您可以在文档中阅读这些功能

const schema = {
a: Joi.string(),
b: Joi.when('a', { is: !Joi.exist(), then: Joi.string().required() }),
c: Joi.when('a', { is: !Joi.exist(), then: Joi.string().required() }),
};

最新更新