Olá, sou novo em angular e gostaria de saber como utilizo mais de uma validação esterna com o FormGroup. Atualmente meu código está da seguinte maneira...
constructor(fb: FormBuilder, public router: Router){
//Grupo de formulario - Validações
this.myForm = fb.group({
nome: ['', Validators.required ],
email: ['', Validators.compose([Validators.required, Validators.pattern(this.emailPattern)])],
cpf: ['', Validators.required ],
telefone: ['', Validators.required],
cep: ['', Validators.required]
}, { validator: VwPagePersonal.validaNome });
}
//Validações customizadas
static validaNome(group: AbstractControl): {[Key: string]: boolean} {
const nome = group.get('nome');
if(!nome){
return undefined;
}
var regexp = /\b[^\d\s]+\b/g;
var count = 0;
while (regexp.exec(nome.value))++count;
if (count === 1) {
return { nomeInvalid:true }
}
return undefined;
}
static validaCpf(group: AbstractControl): {[Key: string]: boolean} {
const cpf = group.get('cpf').value;
if(cpf === 1){
return { nomeInvalid:true }
}
return undefined;
}
Tenho duas funções externas, uma é: 'ValidaNome' e a outra 'ValidaCpf'!! Porem só estou conseguindo utilizar uma das validações nessa sintax ", { validator: VwPagePersonal.validaNome });", que esta no formGroup!!