Is there a syntax to add a function to a chain under conditions?
In this example, I would like myKey
to be Joi.string().required()
if modifier === true
, but just Joi.string()
if it is false
:
function customJoi(modifier) {
return Joi.object({
myKey: Joi.string() //#If(modifier) .required() #EndIf
});
}
I know I could do without this feature, with multiple steps. I'm just wondering if there is a nice way to write it concisely for large objects.
CodePudding user response:
You could take optional
, if not required.
myKey: oi.string()[modifier ? 'required' : 'optional']()
CodePudding user response:
You can achieve that with a ternary.
function customJoi(modifier) {
return Joi.object({
myKey: modifier ? Joi.string().required() : Joi.string()
});
}