Передача данных между компонентами с помощью @Input и использование роутера-розетки? - PullRequest
0 голосов
/ 05 марта 2019

Какой самый простой способ передачи данных по компонентам?Я понимаю, что для Parent-> child вы должны использовать @Input, однако это не очень полезно, если вы используете router-outlet, так как вам нужен доступ к шаблону child (и я не понимаю, как вы можете это сделать, когда выиспользовать роутер-розетку) и / или большое приложение.Кроме этого, это возможно только с услугой правильно, верно?

Это показалось хорошим объяснением, но я не могу перевести его на мою проблему.Так как я нахожусь на более крупном проекте (младший и изучаю английский язык, когда я работаю), и я не могу просто ввести некоторые значения здесь и там.

Также я начал с службы, но мой начальник сказал, что ямне это не нужно, однако использование сервиса мне показалось разумным.

1 Ответ

0 голосов
/ 05 марта 2019

Вы, безусловно, можете обмениваться данными со службой, хотя это может восприниматься как запах кода, поскольку вы, как правило, стараетесь избегать отслеживания состояния в службах.

Однако, исходя из моего опыта, лучше сделать компоненты ответственными засамих себя.Так как эти страницы являются одноуровневыми, я хотел бы также сделать так, чтобы компонент братьев отвечал за получение данных.

Альтернатива, если данные достаточно малы или только некоторые идентификаторы, состоит в использовании параметров строки запроса для передачи данных..

РЕДАКТИРОВАТЬ: Альтернативой также является использование библиотеки, такой как NGRX, но это будет иметь много накладных расходов при настройке.

...