Другой вариант - определить лучший шаблон подписки, чтобы вам не нужно было отписываться.
Например, вы можете сделать что-то вроде этого:
export class ProductEditComponent implements OnInit, OnDestroy {
componentActive = true;
ngOnInit(): void {
// Watch for changes to the currently selected product
this.store.pipe(
select(fromProduct.getCurrentProduct),
takeWhile(() => this.componentActive)
).subscribe(
currentProduct => this.displayProduct(currentProduct)
);
ngOnDestroy(): void {
this.componentActive = false;
}
}
Обратите внимание на takeWhile
.Это гарантирует, что все подписки останавливаются при уничтожении компонента.
Более подробную информацию можно найти здесь: https://brianflove.com/2016/12/11/anguar-2-unsubscribe-observables/ (Но учтите, что код, показанный в этом посте, предназначен для более старой версии RxJS.)