mod-validator

0.0.9 • Public • Published

validator.js Build Status NPM version

一个类似laravel的js验证模块.

安装

  1. 在Nodejs使用
$ npm install mod-validator
  1. 浏览器里使用

下载本项目lib/validator.js 到您的项目目录,引入即可:

<script src="path/to/validator.js"></script>

基本用法

var Validator = require("validator");// 浏览器就不用这句了,Validator是全局变量
var rules = {
  username: 'required|min:5',
  password: 'required|confirmed|min:6|max:16',
}
 
var data = {
  username: 'test',
  password: '123456',
}
 
var v = Validator.make(data, rules); // 或者: var  v = new Validator(data, rules)
 
if(v.fails()) {
  console.log(v.messages());
  //or
  console.log(v.errors());
}

定义验证规则

  • "|" 分隔的字符串形式
var rules = {
  username: 'required|min:5',
  password: 'required|confirmed|min:6|max:16',
  email: 'email'
}
  • 数组形式
var rules = {
  username: ['required', 'min:5'],
  password: ['required', ['confirmed'], ['min:6'], ['max:16'],
  email: ['required', 'email']
}

API

  • 获取验证结果

    • 语法:
      • {Boolean} Validator.passes() 是否通过
      • {Boolean} Validator.fails() 是否验证失败
    • 举例:
     var rules = {
       username: 'required|min:5',
       password: 'required|confirmed|min:6|max:16',
     }
     
     var data = {
       username: 'test',
       password: '123456',
     }
     
     v = validator.make(data, rules);
     
     if (v.passes()) {
       // 如果全部通过验证
     }
     // 或者
     if (v.fails()) {
       // 如果没通过验证
     }
  • 自定义错误消息

    • 语法:{Void} Validator.mergeMessage(attribute [, message])
      • Validator.mergeMessage({attributeName, message})
      • Validator.mergeMessage('attributeName', 'message')
    • 属性替换:在消息字符串用使用:attribute 作为属性名占位符。
    • 举例:
    var messages = {
       required: ':attribute 不能为空.',
       // ...
    }
    ...
    = validator.make(data, rules);
    v.mergeMessage(messages);
    if(v.fails()) {
      console.log(v.errors());
    }
     
    //------------------------------------------
     
    v.mergeMessage({required: ':attribute 不能为空.'})
    //以上用法等同于:
    v.mergeMessage('required', ':attribute 不能为空.');
  • 自定义属性别名

    • 语法:{Void} Validator.mergeAttribute(attribute [, alias])
      • Validator.mergeAttribute({attributeName, alias})
      • Validator.mergeAttribute('attributeName', 'alias')
    • 举例:
    var attributes = {
       username: '用户名',
       password: '密码'
       //...
    }
    = validator.make(data, rules);
    v.mergeAttribute(attributes);
     
    if(v.fails()) {
      console.log(v.messages());
    }
     
    //------------------------------------------
     
    v.mergeAttribute({username: '用户名'})
    // 以上等同于:
    v.mergeAttribute('username', '用户名');

License

MIT

Package Sidebar

Install

npm i mod-validator

Weekly Downloads

1

Version

0.0.9

License

MIT

Last publish

Collaborators

  • joychao