Я читаю Angular Руководство по маршрутизации и навигации.
Они используют этот код для получения router param 'id' и используют его для получения героя с помощью службы service:
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)
});
}