Hvordan bytter jeg en abonnent med et Observer du?

stemmer
0

Dette problemet på GitHub ganske mye summerer opp. I'am ved hjelp av en timer()med en tilbakevendende plan av en annen for å utføre en bestemt oppgave. Jeg kobler den opp med en Subscriberå abonnere intervallene. Når en bestemt modell går tom for data, jeg melde det og vente på nye ankomster. Når de data er befolket igjen, prøver jeg å abonnere på nytt, men det fungerer ikke. Det viser seg whena Subscriberhar blitt unsub'd, kan jeg ikke bruke det igjen. Så jeg må erstatte den med en Observer. En nybegynner her, har jeg ingen anelse om hvordan du gjør det. prøvde å se på eksempler, de bare forvirret meg videre.

Hvordan bytter jeg følgende kode til å fungere med en Observeri stedet?

private timer = timer(1000, 1000);

// A timer subscription that keeps sending new images to the observer
timerSubscription = new Subscriber(() => {

    // Check if there is an element in the list
    if (this.head != null) {

      // If the current node at head is a folder, unsubscribe the listener
      if (this.head.data['id'].startsWith('folder')) {
        this.timerSubscription.unsubscribe();
      }

      // Pop a node from the list and pass on to observer
      this.observer.next(this.this$PiFrame.pop());

    } else {

      // If no nodes are left, unsubscribe from the timer
      this.timerSubscription.unsubscribe();

      console.log('No items left on the queue. Deactivating timer subscription.');
    }
  }, e => {}, () => {});

og jeg abonnere slik:

    ...
    // Setup a timer to pop every 1000 ms
    this.timer.subscribe(this.this$PiFrame.timerSubscription);
    ...
    // If no nodes are left, unsubscribe from the timer
    this.timerSubscription.unsubscribe();
    ...
Publisert på 02/09/2018 klokken 05:37
kilden bruker
På andre språk...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more