2
respostas

[Dúvida] Usando EventEmitter na memoteca

Sobre a afirmação: "A classe EventEmitter é utilizada em componentes com o @Output, para emitir eventos personalizados de forma síncrona ou assíncrona e registrar manipuladores para esses eventos assinando uma instância. Utilizamos essa abordagem quando queremos que um componente filho envie dados para um componente pai." No caso do projeto Memoteca não daria para implementar isso? Tipo um pensamento emitisse um evento no método atualizarFavoritos(). Dessa forma ele avisava o componente pai de listagem sobre a modificação deste pensamento, e o pai na listagem nesse momento deveria atualizar sua listagem, tirando da lista este elemento que não é mais favorito.

2 respostas

Opa Welton, tudo certo?

Ótima pergunta!

Na programação temos várias abordagens para alcançar o mesmo resultado. No entanto, é importante seguir boas práticas, garantindo que nosso código seja organizado e de fácil manutenção, independentemente do período em que precisarmos atuar nele novamente. Além disso, é importante tornar o código compreensível para outras pessoas que possam interagir com ele no futuro.

O EventEmitter é uma ferramenta muito útil quando queremos que um componente filho envie dados para um componente pai. Sendo assim, teríamos que consolidar o nosso projeto pensando no funcionamento dessa propriedade e seu uso. Tendo isso em mente, deixo abaixo a recomendação da documentação dessa propriedade em inglês para se aprofundar mais no assunto:

Fico à disposição.

Tenha um bom dia e bons estudos.

Pelo que estava olhando, acho que seria possível sim usar essa abordagem do EventEmiitter. Então essa alternativa da questão "Compartilhando Informações" está correta também, apesar de não ter sido apresentada nas aulas. Acho até que seria uma alternativa que faz mais sentido no problema, pois quem é responsável pela listagem dos pensamentos é o componente pai, então quem deveria retirar algum pensamento da lista deveria ser o pai. O Filho deveria avisar o pai que houve alteração em si e o pai retirar o filho em questão.