Prezado Flávio,
temos um problema na atividade 05 (O pipe async) da aula 03 (usuário logado e proteção de rotas).
Acompanhei atentamente e revisei as aulas anteriores à citada acima e o código no arquivo header.component.html deveria ser o abaixo (sem o trecho "*ngIf"):
<header class="fixed-top">
<nav class="navbar navbar-light bg-white">
<a class="navbar-brand">ALURAPIC</a>
<div>
<i class="fa fa-user-circle"></i>
<a class="ml-2">{{user?.name}}</a>
</div>
</nav>
</header>
Ocorre que o código que está aparecendo no vídeo citado é o abaixo (com o trecho "*ngIf"):
<header class="fixed-top">
<nav class="navbar navbar-light bg-white">
<a class="navbar-brand">ALURAPIC</a>
<div *ngIf="user; else login">
<i class="fa fa-user-circle"></i>
<a class="ml-2">{{user.name}}</a>
</div>
<ng-template #login>
<span class="navbar-text">
<a> Please, login!</a>
</span>
</ng-template>
</nav>
</header>
Acredito que este código é mais atualizado que o anterior e faltou acrescentar uma atividade em que o primeiro código é alterado para o segundo. Tentei fazer com base no vídeo, mas está apresentando alguns erros no console. Suponho que está faltando mais alguma alteração em outro arquivo/classe.
O erro apresentado no console depois que fiz a alteração para o segundo código é o abaixo:
Template parse errors:
Can't bind to 'ngIf' since it isn't a known property of 'div'. ("
<a class="navbar-brand">ALURAPIC</a>
<div [ERROR ->]*ngIf="user; else login">
<i class="fa fa-user-circle"></i>
<a class="ml-2""): ng:///CoreModule/HeaderComponent.html@4:13
Can't bind to 'ngIfElse' since it isn't a known property of 'div'. ("
<a class="navbar-brand">ALURAPIC</a>
<div [ERROR ->]*ngIf="user; else login">
<i class="fa fa-user-circle"></i>
<a class="ml-2""): ng:///CoreModule/HeaderComponent.html@4:13
Property binding ngIf not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". ("
<a class="navbar-brand">ALURAPIC</a>
[ERROR ->]<div *ngIf="user; else login">
<i class="fa fa-user-circle"></i>
<a class=""): ng:///CoreModule/HeaderComponent.html@4:8
Property binding ngIfElse not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". ("
<a class="navbar-brand">ALURAPIC</a>
...
Sugiro que revise esta aula incluindo o conteúdo que faltou.
Imagino que a dificuldade apresentada nos dois itens anteriores deste fórum dizem respeito a este problema.
Até o momento, este foi o único problema que encontrei no treinamento. A sugestão da transcrição dos vídeos é muito válida pois são muitos conceitos. O material escrito nos ajuda a relembrar quando estivermos codificando por conta própria.
No mais, parabéns pelo trabalho. São muitos detalhes e vc está explicando muito bem o funcionamento de cada item apresentado. Continue assim.
Obrigado! Valfran