Я использую угловой сервис, чтобы обернуть некоторые из моих http-вызовов, чтобы управлять состоянием загрузки моего приложения.
Этот сервис хранит статус вызовов для дальнейшего процесса. К сожалению, функция finalize никогда не вызывается.
Вот обертка:
searchWithLoader(obs: Observable<any>) {
this.show();
obs.pipe(finalize(() => {
console.log("FINALIZE NOT CALLED");
this.hide();
}));
return obs;
}
И способ, которым я обычно называю это:
let performanceLoader = this.loaderService.searchWithLoader(
this.performanceDataService.getSomething({
x: x,
y: y,
}));
performanceLoader.subscribe(() => {});
Есть ли способ обойтиэто для того, чтобы финал вызывался в сервисе вместо компонента?