节点.js:如何使用验证器.js处理多个验证

Node.js: How to handle multiple validate with validator.js

本文关键字:验证 js 处理 何使用 节点      更新时间:2023-09-26

我找到了验证器.js但我不确定应该如何验证多个值。

通过 validate.js我可以定义约束,然后运行validate(myDataObject, constraints)它返回错误或成功。

但是使用验证器.js我需要执行以下操作:

if(validator.isEmail(myData.email) && validator.isURL(myData.url)) {
    // success
}

对于许多变量,这可能会变得混乱,尤其是当需要多个位置相同的条件时。

知道我能做什么而不是使用 if 来验证许多字段吗?

您可以添加自己的验证器

validator.extend('isAwesomeEmail', function (myData) {
    return validator.isEmail(myData.email) &&
        validator.isUrl(myData.url);
});
validator.extend('isSuperAwesomeEmail', function (myData) {
    return validator.isAwesomeEmail(myData) &&
        myData.awesome === true;
});
validator.isAwesomeEmail(myData);
validator.isSuperAwesomeEmail(myData);