Как сделать связь между компонентами - PullRequest
0 голосов
/ 13 ноября 2018

Как показано на рисунке ниже, скажем, у меня есть два @Component (s):

  • MenuComponent
  • TableComponent enter image description here

Оба ContainerComponent дети.

MenuComponent запускает событие (через EventEmitter), чтобы «сказать», что мы хотим, чтобы все строки таблицы были выбраны. Это событие перехватывается на уровне ContainerComponent.

Какова лучшая стратегия, чтобы TableComponent знал, что он должен выбрать все строки своей таблицы?

Я мог бы использовать стратегию @ViewChild, но мне не нравится прямой доступ к компонентам. Любая другая идея?

1 Ответ

0 голосов
/ 13 ноября 2018

Не усложняйте

<app-container>
  <app-menu #menu (selectAllRows)="table.selectAllRows($event)">

  </app-menu>
  <app-table #table>

  </app-table>
</app-container>
...