Com base no seu texto eu fui pesquisar mais um pouco e percebi algumas coisas.
No seu exemplo o exportAs é desnecessário, pois mesmo sem ele o Angular já entende que o tipo de exportUser é UserComponent e vc já consegue acessar propriedades e métodos públicos por padrão.
Ou seja:
<!-- Isto: --><app-user#exportUser="user"></app-user><!-- é equivalente a isto: --><app-user#exportUser></app-user>
O exportAs brilha em cenários em que vc precisa que o tipo da template variable seja diferente do tipo do componente em que ela está sendo usada.
Oi, João \o
Com base no seu texto eu fui pesquisar mais um pouco e percebi algumas coisas.
No seu exemplo o
exportAs
é desnecessário, pois mesmo sem ele o Angular já entende que o tipo deexportUser
éUserComponent
e vc já consegue acessar propriedades e métodos públicos por padrão.Ou seja:
O
exportAs
brilha em cenários em que vc precisa que o tipo da template variable seja diferente do tipo do componente em que ela está sendo usada.Por exemplo, imagina que vc tem esta diretiva:
E este template:
O código acima vai dar erro, pois o Angular entende que
exportUser
é do tipoUserComponent
.Para corrigir, basta fazermos isso:
O mesmo vale para elementos comuns:
O tipo de
myDiv
éHTMLDivElement
e por isso vai dar erro. Para corrigir:Ótimo ponto, obrigado!!! =D =D