Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Dúvida sobre o constructor e o Oninit

Ao longo do curso de Angular aprendemos que a implementação do componente ou serviço não deve ficar no constructor e sim no método OnInit. O fato é que já não lembro mais o motivo. Por que essa recomendação?

5 respostas

Fala ai Mauricio, tudo bem? Isso é uma boa prática, o construtor a gente geralmente realiza injeção de dependências e inicializações de informação na classe.

Espero ter ajudado.

Mas eu queria saber por que é considerado uma boa prática. Em que isso favorece o código? É só para ficar mais organizado?

solução!

Fala Mauricio, é uma boa prática por conta do momento de execução dessa função, o construtor é chamado assim que a gente instância o componente, mas, isso não quer dizer que ele foi renderizado, atualizado, montado, iniciado, etc...

Sendo assim, pode ser que seja necessário a gente querer ter acesso a alguma injeção de dependência para disparar serviços, ou coisas do tipo, por isso no construtor a gente faz a injeção para que quando chegue o momento de executar o onInit as dependências já estão prontas.

Além de ser estranho realizar algo que não seja injeção ou inicialização no construtor (entrando um poucos em conceitos de orientação à objetos).

Espero ter ajudado.

Agora sim. Ajudou. Dúvida resolvida.

Boa Mauricio, sempre que precisar não deixe de criar suas dúvidas.

Abraços e bons estudos.