передача входных данных в ng-контент от родителя в Angular

У меня есть следующая структура в компоненте контейнера (подход ngrx) container-page.component.ts

<parent-comp><child-comp [someInput]="someValue"></child-comp></parent-comp>

А у меня в шаблоне parent-comp есть

<div>
    <!-- some content here -->
    <ng-content></ng-content> <!-- child-comp will go here -->
    <!-- some more content -->
</div>

Теперь передача данных из контейнера в child-comp работает нормально, но что, если я хочу передать некоторые данные из parent-comp в child-comp напрямую?

выполнение <ng-content [inputFromParent]="valueFromParent"></ng-content> не работает.


person AngularDebutant    schedule 07.05.2020    source источник
comment
Я не уверен, улавливаю ли я ход ваших мыслей. Если вы уже можете передавать данные непосредственно дочернему компоненту, почему вы хотите использовать ng-content в качестве конечной точки для других входных данных? Не могли бы вы предоставить пример использования? Или, что еще лучше, демонстрацию stackblitz, иллюстрирующую то, что вы не можете сделать?   -  person julianobrasil    schedule 08.05.2020


Ответы (1)


<ng-content> не может иметь входных данных, потому что это не компонент. Это также не заполнитель для компонента. Это заполнитель для детей. Если бы у <parent-comp> было два родственных дочерних компонента, <ng-content> пришлось бы отображать их оба. Правильным способом передачи информации здесь было бы использование родителя <parent-comp> (контейнера). Выведите некоторый ввод из <parent-comp> и добавьте его в качестве ввода в <child-comp>

person Jason S.    schedule 07.05.2020