Sometimes http api call takes long time to load data. In this case, if we move on another component, it still keeps executing (we can see it in browser console). So, is there any way by which we can cancel or kill http api call when we move on another component?
2 Answers
You can "kill" it by using unsubscribe() method in OnDestroy lifecycle event, under assumption you are using subscriptions, for example:
mySubscription: any;
ngOnInit() {
this.mySubscription = this.myHttpCall().subscribe...
}
ngOnDestroy() {
this.mySubscription.unsubscribe();
}
2 Comments
Jeeten Parmar
Thank you... :) By using this, I can
unsubscribe() one api but is there any way by which i can unsubscribe() multiple apis by using just one variable.user966614
You can use the takeWhile() function from rxjs to unsubscribe all the subscriptions: Example: brianflove.com/2016/12/11/anguar-2-unsubscribe-observables
You can use the takeWhile() function from rxjs to unsubscribe all the subscriptions: Example:
http://brianflove.com/2016/12/11/anguar-2-unsubscribe-observables/