是否可以使用Yup直接验证ES6集?

时间:2018-06-05 05:13:29

标签: javascript ecmascript-6 yup

是否可以使用Yup直接验证ES6集?

我的意图是使用类似的东西: const schema = yup.set().of( yup.string() ).min(1).required()

有没有办法使用是的,以便我可以强制执行这些验证要求?

1 个答案:

答案 0 :(得分:1)

我决定将附加功能添加到array()

yup.addMethod( yup.array, 'set', function() {
    return this.transform(function(value, originalValue){
        if ( this.isType( value ))
            return value;

        return [...originalValue]
    })
})

所以我可以这样做: yup.array().set().ensure().of( yup.string() ).min(1).required(),

不是最好的解决方案,但它现在工作正常,如果需要,我可能会在不久的将来做一个适当的类声明来扩展yup.array。

谢谢!