When enabling the VJF
plugin, you can optionally enhance it using validator.js.
validator
Package (optional)validator
it's not included in the package, so you have to install it manually.
npm install --save validator
Minimal setup:
import vjf from 'mobx-react-form/lib/validators/VJF';
const plugins = {
vjf: vjf()
};
Using validator.js
:
import vjf from 'mobx-react-form/lib/validators/VJF';
import validator from 'validator';
const plugins = {
vjf: vjf({ package: validator })
};
Shortcut:
import vjf from 'mobx-react-form/lib/validators/VJF';
import validator from 'validator';
const plugins = {
vjf: vjf(validator)
};
No need to import the plugin function:
import validator from 'validator';
const plugins = {
vjf: validator
};
plugins
objectnew Form({ ... }, { plugins });
chriso/validator.js
functionsYou can now access the validator
package in your custom function.
export function isEmail({ field, validator }) {
const isValid = validator.isEmail(field.value); // <<---
return [isValid, `The ${field.label} should be an email address.`];
}
The function takes in input an object with the following props:
form
instancefield
instancevalidator
instanceCheck out how to define Custom VJF Validation Function