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