А нижче пояснення з кутових документів.
Вхідний компонент - це будь-який компонент, який кутовий завантажується обов'язково за типом.
Компонент, завантажений декларативно через свій селектор, не є вхідним компонентом.
Більшість компонентів програми завантажуються декларативно. Angular використовує селектор компонента, щоб знайти елемент у шаблоні. Потім він створює HTML-представлення компонента і вставляє його в DOM у вибраному елементі. Це не вхідні компоненти.
Кілька компонентів завантажуються лише динамічно і ніколи не посилаються на шаблон компонента.
Корінь завантаженого завантаження AppComponent
є вхідним компонентом. Правда, його селектор відповідає тегу елементів у index.html. Але index.html
це не шаблон компонента, і AppComponent
селектор не відповідає елементу в будь-якому компонентному шаблоні.
Кутове завантаження AppComponent динамічно, оскільки воно або перераховане за типом, @NgModule.bootstrap
або обов'язково завантажується методом ngDoBootstrap модуля.
Компоненти у визначеннях маршрутів також є компонентами введення. Визначення маршруту відноситься до компонента за його типом. Маршрутизатор ігнорує селектор маршрутизованого компонента (якщо у нього навіть є) і динамічно завантажує компонент у RouterOutlet
.
Компілятор не може виявити ці вхідні компоненти, шукаючи їх в інших шаблонах компонентів. Ви повинні розповісти про них, додавши їх до entryComponents
списку.
Angular автоматично додає до модуля такі типи компонентів entryComponents
:
- Компонент у
@NgModule.bootstrap
списку.
- Компоненти, на які посилається в конфігурації маршрутизатора.
Не потрібно чітко згадувати про ці компоненти, хоча робити це нешкідливо.
declared
вngModule
але ніколи не використовуються. angular.io/docs/ts/latest/cookbook/… entrycomponents -