field-validator
config-based field validator
Install
front-end
bower install field-validator
back-end
npm install field-validator
Open sample
fv is the alias of field-validator that you can use it like $ for jquery.
//Define restrictions
var restrictions = {
name: {
required: true
},
age: {
required: true,
type: 'string'
}
};
//Generate validator by the restrictions
var validator = fv.newInstance(restrictions);
var data = { name:'wangpin'};
//Then perform validation
var result = validator.perform(data);
The result contains standard errors if data is invalid. And if you only need to know if validation is passed or not:
validator.getState();
API
-
Support properties in restriction
name description datatype examples default required set field to be required boolean true false type set field type string 'string' maxLength set max length of string or array number 10 minLength set min length of string or array number 1 max set max value of number number 1001 min set min value of number number -38 elementType set element type of array string 'string' uniqElement allow an array has uniq constraint for elements boolean true false
Supported field types:
boolean
number
string
Array
For elementType, currently fv could support several primitive types:
boolean
number
string
fv thinks null,undefined should not be one of dataTypes. Symbol is not supported also.
- fv.newInstance(restrictions,options)
Create fv instances(called fvObj in following introductions) by given restrictions and options
- fvObj.perform(data)
Perform validation on given data. The data should be a pure json object.And currently, it can only check data whose properties types are string,number,boolean and array.
- fv.getState Return the state of the latest perform operation. E.g. true means validation passed.
Browser Unit test
Open test/report/jasmine_report.html in your browser
There is an online report.
LICENSE
MIT