У меня есть ListComponent. При щелчке по элементу в ListComponent подробности этого элемента должны отображаться в DetailComponent. Оба отображаются на экране одновременно, поэтому маршрутизация не требуется.
Как мне сообщить DetailComponent, какой элемент в ListComponent был нажат?
Я подумал о том, чтобы передать событие родительскому элементу (AppComponent), и чтобы родитель установил selectedItem.id на DetailComponent с @Input. Или я мог бы использовать общий сервис с наблюдаемыми подписками.
РЕДАКТИРОВАТЬ: установка выбранного элемента через событие + @Input не запускает компонент DetailComponent, хотя на тот случай, если мне понадобится выполнить дополнительный код. Так что я не уверен, что это приемлемое решение.
Но оба эти метода кажутся намного более сложными, чем способ выполнения действий в Angular 1, который осуществлялся либо через $ rootScope. $ Broadcast, либо через $ scope. $ Parent. $ Broadcast.
Поскольку все в Angular 2 является компонентом, я удивлен, что больше нет информации о взаимодействии компонентов.
Есть ли другой / более простой способ сделать это?