Joi验证动态对象数组

时间:2018-07-13 12:07:38

标签: javascript node.js reactjs validation joi

我正在尝试验证对象数组,如果用户单击按钮并且用户具有删除对象的能力,对象可能会增加。我尝试使用joi api

示例:

    Services[
                {
                    service1:'number',
                    service2:'number',
                    service3:'number'
                },
                {
                    service1:'number',
                        service2:'number',
                    service3:'number'
                },
                {
                    service1:'number',
                        service2:'number',
                    service3:'number'
                }
         ];
     const schema = Joi.array().items(Joi.object().keys({
         service1:Joi.string().regex(/^/).required().label(" ").options({
            language: {
                any: {
                    empty: 'Please enter number.',
                    required: 'Please enter a valid number.'
                },
                string: {
                    regex: {
                        base: 'Please enter a valid number.'
                    }
                }
            }
        }),
        service2:Joi.string().regex(/^/).required().label(" ").options({
            language: {
                any: {
                    empty: 'Please enter number.',
                    required: 'Please enter a valid number.'
                },
                string: {
                    regex: {
                        base: 'Please enter a valid number.'
                    }
                }
            }
        }),
        service3:Joi.string().regex(/^/).required().label(" ").options({
            language: {
                any: {
                    empty: 'Please enter number.',
                    required: 'Please enter a valid number.'
                },
                string: {
                    regex: {
                        base: 'Please enter a valid number.'
                    }
                }
            }
        })
    }));

,然后是Joi.validate(values,schema); Joi无法拾取对象键,因此即使用户输入了错误的输入也不会引发任何错误。

0 个答案:

没有答案