Olá, tudo bem? Queria compartilhar algo que percebi. Vi que se digitar um cep com menos dígitos, mesmo nosso validador apontando o erro de cep inválido, ao ativar o evento blur a requisição na API é feita da mesma forma, gerando um erro 400 no retorno. É indiferente para o funcionamento, mas essa requisição poderia ser evitada. No método consultaCep, ao invés de usar o evento ($event) para pegar o valor do cep e fazer o if apenas validando se o cep está vazio, da pra utilizar o form que já estamos recebendo e verificar se existem erros no campo cep, e se houver, não executar uma nova requisição.
O meu método ficou assim:
consultaCep(f: NgForm) {
const cep = f.form.get('cep')
if (!cep?.errors) {
this.service.getConsultaCep(cep?.value).subscribe((resultado) => {
console.log(resultado)
this.populandoEndereco(f, resultado)
})
}
}
Gostaria de saber se há uma forma melhor de fazer isso, ou se to fazendo certo. Está funcionando né, mas vai saber. Adorei o curso, muito obrigado!