Angular 2 custom validator with parameters
Here is a sample. It's a min value validator where you pass in a number to validate.
import {Control} from 'angular2/common';
export const minValueValidator = (min:number) => {
return (control:Control) => {
var num = +control.value;
if(isNaN(num) || num < min){
return {
minValue: {valid: false}
};
}
return null;
};
};
More details can be found in the Custom Validators official documentation page.
The minValueValidator example basically shows that you can use a factory for your custom validator so it will be something like this:
static minValue = (num: Number) => {
return (control:Control) => {
var num = control.value;
if (isNaN(num) || num < 5 ) { return {"minValue": true}; }
return null;
}
}
In my case I use FormControl not Control
import { FormControl } from '@angular/forms';