親コンポーネントの子コンポーネントに送信されたParams変数にアクセスする必要があります。@Outputを使わずにAngular2 rc6の子/親コンポーネントでparams変数を共有するにはどうすればよいですか?
ルーティング::(抜粋)
{
path: 'song',
component: SongExerciseComponent,
children: [
{
path: 'reading/:id',
component: SongReadingComponent,
}
]
}
親コンポーネントは、ナビゲーションリンクを保持するだけのテンプレートである
は、私は次のような構造を持っています。そのような子コンポーネントのid VAR: 私がアクセスできる
ngOnInit(): void {
this.route.params.forEach((params: Params) => {
if (params['id'] !== undefined) {
let id = +params['id'];
を今私は親テンプレートで使用する親コンポーネントで同じ変数を必要としています。
これを行う最も効果的な方法はどれですか?サービスを共有しますか? https://angular.io/docs/ts/latest/cookbook/component-communication.html#!#parent-and-children-communicate-via-a-service
出力は問題ありませんが、データを複数レベルのコンポーネント階層に渡す必要がある場合は面倒です。共有サービスは、このケース(ナビゲーション)に適しているようです。サービス自体は、出力のイベントエミッタと同様に、観測可能イベントまたはEventEmitterになります。 – estus