我正在寻找一种使用joi验证数组是否包含所需值的方法
在线发现了这些问题 - #1,#2,但没有一个有明确的答案
我尝试了几种东西,但它们似乎没有用,比如:
switch
,
joi.array().items(joi.string().allow('required-string').required())
,
joi.array().items(joi.string().label('required-string').required())
这就是我想要实现的目标:
接受:
joi.array().items(joi.string().valid('required-string'))
拒绝:
['required-string'], ['required-string', 'other'], ['other','required-string'], ['other',...,'required-string',....,'more-other']
答案 0 :(得分:1)
您可以使用array.items
列出所有允许的类型。如果给定的类型是.required()
,那么数组中必须有匹配的项:
joi API reference
joi.array().items(joi.string().valid('required-string').required(), joi.string())