Gostaria que me explicassem ponto a ponto a parte do código da aula: this.user$.subscribe(user => this.user = user);
Gostaria que me explicassem ponto a ponto a parte do código da aula: this.user$.subscribe(user => this.user = user);
Fala ai Mauricio, tudo bem? Vamos lá.
O this.user$ é um Observable e uma das funções disponibilizadas pela classe Observable é a subscribe.
Basicamente a subscribe fica ouvindo quando o seu Observable tem um novo valor, ou seja, quando ele executa o .next.
Seria algo simiular a Promise, onde a Promise seria um Observable e o .then seria o .subscribe (apenas uma analogia, o funcionamento por baixo e a ideia de ambos são diferentes).
Quando você faz: this.user$.subscribe(user => this.user = user) você registrou uma nova função que ficará ouvindo e esperando por novos valores vindo do seu Observable no caso o this.user$.
Espero ter ajudado.
Ok, boa explicação, mas vc não explicou em detalhes a parte da arrow function: user => this.user = user
Está confuso para mim.
Fala Mauricio, a parte da arrow function vai pegar o usuário que está chegando através do Observable e atualizar o atributo da classe chamado user com o novo usuário que chegou.
user => // recebendo novo usuário
this.user // atributo da classe do seu componente
this.user = user // atribuindo o novo usuário para o atributo da classe
user => this.user = userEspero ter ajudado.
Seria o equivalente a:
function(user) {
this.user = user;
}
Correto?
Fala ai Mauricio, tudo bem? Correto, é isso mesmo.
Só muda no trecho seu é uma função normal, ou seja, declaration function, já no código da aula é uma arrow function:
https://blog.matheuscastiglioni.com.br/definindo-funcoes-em-javascript/
Abraços.