Angular 9 заметных отписки с помощью пакета @ ngneat / till-destroy npm - PullRequest
1 голос
/ 04 мая 2020

Я использую @ngneat/until-destroy этот npm пакет для автоматической отмены подписки наблюдаемых. Я использовал checkProperties: true для автоматической отписки наблюдаемых.

Но я не понимаю, как это проверить. Является ли наблюдаемое становится отписанным или нет?

Мой вопрос прост. Работает ли этот код, или мне нужно использовать такой канал перед подпиской

.pipe(untilDestroyed(this))

Заранее спасибо

import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';

@UntilDestroy({ checkProperties: true })

@Component({
  selector: 'app-view-all-purchase',
  templateUrl: './view-all-purchase.component.html',
  styleUrls: ['./view-all-purchase.component.scss']
})

export class ViewAllPurchaseComponent implements OnInit, OnDestroy  {


  ngOnInit() {

 this.subscibe1 =  this.vendorService.five_vendors().subscribe(data => {
    if(data){
      console.log(data)
       this.vendor_list = data
    }})

}

ngOnDestroy() {

 }

}

1 Ответ

1 голос
/ 04 мая 2020

Чтобы проверить, не отписана ли ваша наблюдаемая, вы можете добавить console.log в свою подписку (у вас уже есть, но поместили, если не в if(data){}), а затем изменить наблюдаемое в другом компоненте после того, как ViewAllPurchaseComponent должен был быть уничтожены. Если вы получили console.log из ViewAllPurchaseComponent при изменении наблюдаемого в другом компоненте, он не был отписан.

Я не знаю о '@ ngneat / till-destroy', я обычно использую

ngOnDestroy(){ 
   this.subscibe1.unsubscribe();
}

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...