私はAngular Guide about Routing & Navigationを読んでいます。角度2:ルートパラメータを取得するときにswitchMapを使用する理由
彼らはservice
サービスとヒーローを取得するには、ルータのPARAM 'id'
を取得し、それを使用するため、このコードを使用します。
ngOnInit() {
this.route.params
.switchMap((params: Params) => this.service.getHero(+params['id']))
.subscribe((hero: Hero) => this.hero = hero);
}
しかし、私はよくでswitchMap
演算子を使用する目的が何であるかを理解していません上記のコード。
次のコードは同じではありませんか?あなたには、いくつかの先頭に追加「イベント/ストリーム」によってトリガされたいくつかの非同期操作を持っている場合
ngOnInit() {
this.route.params
// NOTE: I do not use switchMap here, but subscribe directly
.subscribe((params: Params) => {
this.service.getHero(+params['id']).then(hero => this.hero = hero)
});
}