Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Як динамічно створити компонент в Angular?». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)**Динамічне створення компонента** в Angular - це можливість створити компонент під час виконання за допомогою `ViewContainerRef` (в Angular 13+ через `ViewContainerRef.createComponent`). **Ключове:** динамічне створення компонентів дозволяє рендерити елементи за подією чи умовою, без їх попереднього оголошення в шаблоні.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)ЗображенняВ Angular компонент можна створити **динамічно** за допомогою `ViewContainerRef` та `ComponentFactoryResolver` (в Angular 13+ краще використовувати просто `ViewContainerRef.createComponent`). ## Приклад для Angular 13+ ```typescript import { Component, ViewChild, ViewContainerRef } from '@angular/core'; import { ChildComponent } from './child.component'; @Component({ selector: 'app-parent', template: `<ng-template #container></ng-template>` }) export class ParentComponent { @ViewChild('container', { read: ViewContainerRef, static: true }) container!: ViewContainerRef; createChild() { // створюємо компонент динамічно const componentRef = this.container.createComponent(ChildComponent); componentRef.instance.title = 'Привіт, динамічний компонент!'; } } ``` ## Пояснення 1. `<ng-template>` слугує точкою вставки для динамічного компонента. 2. `ViewChild` **+** `ViewContainerRef` надають доступ до цієї точки вставки. 3. `createComponent` створює екземпляр компонента і вставляє його в DOM. 4. Через `componentRef.instance` можна задавати властивості компонента після створення. > Висновок: динамічне створення компонентів дозволяє рендерити елементи за подією чи умовою, без їх попереднього оголошення в шаблоні.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.