E abaixo está a explicação dos documentos angulares.
Um componente de entrada é qualquer componente que o Angular carregue imperativamente por tipo.
Um componente carregado declarativamente por meio de seu seletor não é um componente de entrada.
A maioria dos componentes do aplicativo é carregada declarativamente. Angular usa o seletor do componente para localizar o elemento no modelo. Em seguida, ele cria a representação HTML do componente e a insere no DOM no elemento selecionado. Estes não são componentes de entrada.
Alguns componentes são carregados apenas dinamicamente e nunca são referenciados em um modelo de componente.
A raiz de inicialização AppComponent
é um componente de entrada. Verdadeiro, seu seletor corresponde a uma tag de elemento em index.html. Mas index.html
não é um modelo de componente e o AppComponent
seletor não corresponde a um elemento em nenhum modelo de componente.
O Angular carrega o AppComponent dinamicamente porque é listado por tipo @NgModule.bootstrap
ou inicializado imperativamente com o método ngDoBootstrap do módulo.
Os componentes nas definições de rota também são componentes de entrada. Uma definição de rota refere-se a um componente por seu tipo. O roteador ignora o seletor de um componente roteado (se houver um) e carrega o componente dinamicamente em umRouterOutlet
.
O compilador não pode descobrir esses componentes de entrada procurando-os em outros modelos de componentes. Você deve contar sobre eles adicionando-os à entryComponents
lista.
O Angular adiciona automaticamente os seguintes tipos de componentes aos módulos entryComponents
:
- O componente na
@NgModule.bootstrap
lista.
- Componentes mencionados na configuração do roteador.
Você não precisa mencionar esses componentes explicitamente, embora isso seja inofensivo.
declared
dentro,ngModule
mas nunca são usados. angular.io/docs/ts/latest/cookbook/… entrycomponents -