3
respostas

Erro de loading não pára no like mais de uma vez na foto

Na atividade 5 (Interceptador) conseguimos controlar a barra de loading (start e stop) para requisições do back-end. Só que a barra de loading não pára quando ocorre o click mais de uma vez na curtida de uma foto. Ou seja, no método like() do arquivo photo.service.ts, usamos catchError para tratar uma exceção do back('304'). Como não sou um especialista em javascript/typescript (ainda, porque quero fazer com vocês os cursos) não consegui resolver, mas acho que esse mesmo tratamento (usando catchError com pipe) deve ser feito no loading.interceptor.ts, no método intercept.

3 respostas

Fala ai Giuliano, tudo bem? Nesse caso a gente poderia resolver o problema antes de realizar a requisição, ou seja, quando a pessoa realizar X cliques a gente não envia X requisições para a API e sim apenas uma.

Isso pode ser feito implementando uma técnica chamada debouce:

https://blog.matheuscastiglioni.com.br/previnindo-multiplas-requisicoes-com-debounce/

Nesse post eu explico como ela funciona e como implementá-la.

Espero ter ajudado.

Ok, Matheus. Muito obrigado. Vou implementar, qualquer problema te aviso.

Magina Giuliano, sempre que precisar não deixe de criar suas dúvidas.

Abraços e bons estudos.