Почему первая цепочка не завершается?
Предполагается, что switchMap отменит подписку на предыдущую наблюдаемую, и, поскольку http.get является однократной наблюдаемой, я думал, что она будет завершена.
Вместо этого я продолжаю получать результаты http.get. Это то, что я ожидал от flatMap.
this.route.params
.pipe(
switchMap(params => {
return this.http.get('assets/data/module.json');
})
)
.subscribe(
res => {
console.log(res);
},
e => e,
() => console.log('complete')
);
По умолчанию http.get приводит к завершению.
this.http.get('assets/data/module.json').subscribe(
res => {
console.log(res);
},
e => e,
() => console.log('complete')
);