Я прочитал несколько статей о Observable и отписках. Но я не понимаю немного информации о трубе (). Труба автоматически отписывается в некоторых случаях. Каковы эти случаи? У меня есть один сервис для подключения к моему серверу и один компонент. Должен ли я отписаться здесь и используя ngOnDestroy? Это простой сервис для приложения CRUD.
Например, один метод из сервиса:
public getSubject(size:number, page:number) : Observable<Subject[]> {
return this.http.get<Subject[]>(environment.apiUrl + '/subject?size='+size+'&page='+page)
.pipe(
map(data=>{
return data;
}),
catchError(err => {
return throwError(err);
}));
}
И компонент, использующий сервис с разрушителем.
//...some code
pageClick() {
this.subscriptions.add(this.connector.getSubject(this.pageSize, this.page - 1)
.subscribe(data => {
this.subject = data;
this.errorFlag = false;
}, error => {
this.error = error.error.message;
this.errorFlag = true;
}));
}
//..some code..
@HostListener('window:beforeunload')
ngOnDestroy() {
this.subscriptions.unsubscribe();
}