Вы не можете пропустить компоненты через Input
. Вам следует прочитать о включении и использовании тега ng-content
.
Ваш шаблон компонента должен выглядеть следующим образом:
<div class="popup">
<div class="popup__content">
<a class="popup__close">X</a>
<ng-content></ng-content>
</div>
</div>
Тогда вы можете использовать свой компонент следующим образом:
<PopupComponent>
<my-component></my-component>
<!-- Or any content... -->
<p>Anything</p>
</PopupComponent>
То, что находится между тегами PopupComponent
, будет вставлять там, где тег ng-content
находится в вашем шаблоне PopupComponent.
Если содержимое необходимо создавать динамически, вы также можете использовать Angular dynamici c загрузка компонента .