When I say, doesn't interfere, I mean it doesn't attach itself to input change events or form submit events. It also doesn't manipulate the DOM for you by automatically displaying errors.
ApproveJs exposes a single method, value()
and leaves you to decide when a value is validated and how errors are displayed.
Using ApproveJs, you can automate validation however you please.
Personally, I use Vue.js bindings to handle when validation occurs and how errors are displayed.
If you like to be in control or have a little OCD like me, ApproveJs is for you.
ApproveJS is also easily extended with custom tests.
Add a script
tag to the library before the end of your closing <body>
tag
<script src="path/to/approve.min.js"></script>
In your terminal run:
$ bower install approvejs
Add a script
tag to the library before the end of your closing <body>
tag
<script src="path/to/bower/approvejs/dist/approve.min.js"></script>
In your terminal run:
$ npm install approvejs
Require approvejs
.
var approve = require('approvejs');
ApproveJS exposes a single method value
that takes two parameters.
The first parameter is the value to validate and the second is the set of rules to test against.
var rules = {
required: true,
email: true
};
var result = approve.value('user@domain.com', rules);
The returned result
contains two properties:
{
approved: true|false,
errors: []
}
You can access errors returned by the result in one of two ways:
var i = result.errors.length;
while(i--) {
console.log(result.errors[i]);
}
The result object exposes an each()
method for easily getting to errors.
result.each(function(error) {
console.log(error);
});
View the project page for demos and documentation on rules and extending ApproveJs with your own tests.
If you would like to contribute to the project, please read contributing.