У меня есть компонент, у которого есть подписка в методе ngOnInit()
, когда я перехожу на другой маршрут, я все еще вижу, что компонент жив в heap snapshot
.
Компонент A
sub: Subscription
this.sub = this.detect.isValid().subscribe(data => this.data = data);
ngOnDestroy(){
this.sub.unsubscribe();
}
Компонент B
Компонент A все еще жив, когда я перехожу к маршруту Компонента B , но если я прокомментирую подписку (this.sub)
... компонент больше не виден (уничтожается)
Я не уверен, почему компонент не быть уничтоженным, даже когда я отписываюсь от наблюдаемого?
this.sub.unsubscribe();
Ниже приведен код для detectService
private $value: BehaviorSubject<boolean>;
constructor() {
this.$value = new BehaviorSubject(true);
}
public isValid(): Observable<boolean> {
return this.$value;
}