validator
Validate Form Data.
Install
npm install -S hey-validator
API
rules: a: type: 'int|number|email|url|tel|mobile|globalmobile' //可以自定义 required: true maxLen: 1000 minLen: 2 b: valid: pattern: /^[0-9]+$/ message: "请输入正确的数字格式" required: true min: 1 max: 5 c: required: true type: 'int' { ifrespisExsit return "错误"; return true; } { $ ifrespisExsit ; ; } "d.b": "e[].a": combineRules: parentRef: 'e[]' //如果验证的是子集的数据,则需要定义父级 refs: 'b' 'c' { ifcondition return "b不能大于c"; return true; } refs: 'b' 'c' valid: valid: 'lessThan' //greaterThan message: "开始时间必须小于结束时间" refs: 'd' 'e' valid: : valid: 'equal' message: "两次密码输入必须一致" //可以对一些同一种类型的类型判断集成设定 required:'b''c''e''f''e'"d.b""e[].a" int:'a' number:'a' email:'a' url:'a' tel:'a' mobile:'a' globalmobile:'a' //国际号码;
Define Valid Function
{ return true; //或者 return "error message";}
Define Global Valid
Valid
Usage
type
let rule = rules: int: type: "int" number: type: "number" url: type: "url" pro: { if prop == "0" return "pro不能为0" return true } required: "int"let validator = rule//部分验证validator// { a: { valid: false, message: '不能为空', type: 'base' } } validator// { a: { valid: false, message: '不是正确的整数格式', type: 'base' } } validator// { number: { valid: true, message: null, type: 'base' } } validator// { pro: { valid: false, message: 'pro不能为0', type: 'base' } }
combine
let rule = rules: int: type: "int" number: type: "number" combineRules: refs: "int" "number" valid: valid: "equal" message: "int必须等于number" let validator = rule//全部验证validator// { int: { valid: false, message: '不是正确的整数格式', type: 'base' },// number: { valid: true, message: null, type: 'base' } } validator// { int: { valid: true, message: null, type: 'base' },// number: { valid: false, message: 'int必须等于number', type: 'combine' } } validator// { int: { valid: true, message: null, type: 'base' },// number: { valid: false, message: 'c必须大于d.b', type: 'combine' } }
async
let rule = rules: async: { } async2: { } let validator = rule//部分验证validator //全部验证validator