Lucas_Camara 10 de jun. de 2020
Você pode criar um validador: https://angular.io/guide/form-validation#defining-custom-validators , Com isso vc obtém o valor do cep, pega somente os números (com regex) e faz a verificação.
guilhermebhte 12 de jun. de 2020
Lucas_Camara 12 de jun. de 2020
Nunca fiz um validador customizado, mas pelo que li na documentação e o que vc precisa, imagino algo mais ou menos assim:
export function requiredCepWithMaskValidator (): ValidatorFn {
return ( control : AbstractControl ): {[ key : string ]: any } | null => {
const textNumbers = control . value . match ( / \d +/ g ) . join ( '' );
const isValid = cepTextNumbers . length === 8 ;
return isValid ? null : { 'required' : { value : control . value }};
};
}
E no seu formGroup:
cep: ['', [
Validators.required,
Validators.min(10),
Validators.max(10),
requiredCepWithMaskValidator() // <-- aqui vc invoca o validador customizado
]],
guilhermebhte 12 de jun. de 2020
Lucas_Camara 12 de jun. de 2020
Ops, erro de digitação:
const cepTextNumbers = control . value . match ( / \d +/ g ) . join ( '' );