求问,node中对于表单校验一般用哪个库?
发布于 11 年前 作者 irou1217 8757 次预览 最后一次回复是 11 年前 来自 问答
//定义
validator = (message)->
v = new Validator()
errors = []
v.error = (msg)->
console.log msg,'msg'
errors.push(msg)
v.check(message.username, '用户名的长度应该在2到12个字符之间').len(2, 12)
v.check(message.email, '请提供有效的邮箱地址').isEmail()
v.check(message.password, '密码不能少于7个字符').len(7, 64)
return errors
使用:
console.log("save user:#{req.body.email} from signup")
err = validator(req.body)
这样用,但是我发现node-validator作者修改了这个npm模块 已经不支持这么写了,总不能每条都判断异常吧。之前的写法,可以一次性把所有error都拿到的。 求问,大家一般用哪个validator。谢谢。
7 回复
我还是在用 validator。 没必要一次性把所有 error 拿到吧?当第一次出错的时候,就返回第一次出错的原因好了呀。
自己写了一个…… 这个还是挺简单的吧?
用的是这个node-validator模块吗?文档中的示例代码显示,它是支持一次性处理所有错误的,虽然语法跟你写的代码不同。
像这种校验功能,如果放在客户端JavaScript执行,少一次与服务器端的交互,我感觉用户体验更好。
https://github.com/skipify/datagate 我也在寻找好方法,暂时用的自己刚写的这个,支持前后端验证,基本的验证规则可以复用
去年写的验证,只剩下一部分草稿了
可以试试ydr-validator
1、实例化一个表单验证
2、添加验证规则
更多验证规则参考readme
3、执行数据验证