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

标签 javascript ecmascript-6 yup

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

我的意图是使用类似的东西: 常量架构 = yup.set().of( yup.string() ).min(1).required()

有什么方法可以使用 yup 来强制执行这些验证要求吗?

最佳答案

我决定给 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。

谢谢!

关于javascript - 是否可以使用 Yup 直接验证 ES6 集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50692485/

相关文章:

javascript - 如何连续运行 mocha 集成测试?

javascript - 是的,验证需要至少一项选择

javascript - 为什么闭包编译器用 goog.exportSymbol 重命名属性?

javascript - 当 Reducer 中的存储发生更改时,useSelector 不会更新。 ReactJS 终极版

javascript - 使用扩展运算符更新包含对象的数组

javascript - 访问对象内部的数组

javascript - 是的嵌套模式验证

node.js - 是的架构验证密码和确认密码不起作用

javascript - 为什么 JSLint 提示未定义/隐含的全局变量?

javascript - JavaScript 中的 indexOf 方法