Saltar al contenido principal
Version: 3.x

Validadores Personalizados

Cualquier validador que asigne su propia clave de error al control funciona igual que uno incorporado. Por ejemplo, un validador que rechaza valores que empiezan con múltiples ceros:

avoidMultipleZero(control: AbstractControl) {
const value = control.value
const isZeros = value ? value.startsWith('00') : false
return isZeros ? { avoidMultipleZero: true } : null
}

Agregalo al control junto con los demás validadores:

ngOnInit() {
this.form = this.fb.group({
salary: [null, [Validators.pattern(regEx.numeric), this.avoidMultipleZero]],
})
}

Y agregá el mensaje correspondiente:

{
"validations": {
"avoidMultipleZero": "Can't start with multiple zeros"
}
}