rxjs 5.5.6 forkJoin остановить с настраиваемой наблюдаемой - PullRequest
0 голосов
/ 27 июня 2018

Я пытаюсь раскошелиться, присоединиться к пользовательской Observable (rxjs 5.5.6)

import { forkJoin } from 'rxjs/observable/forkJoin';

forkJoin(
  this.resources.loadRefsCatalog()
).subscribe((res) => {
  // I'm never executed :(
});

и цель

public loadRefsCatalog(): Observable<any> {
  console.log(1);
  return new Observable((observer) => {
    console.log(2);
    // doing something
  });
}

Я выздоровел 1 и 2 в журнале консоли, но я никогда не попадал в подписку на forkJoin.

Я пытаюсь вернуться с помощью {unsubscribe () {}} и наблюдаем.complete (), но без изменений. Так что я застрял, не зная почему.

Заранее спасибо за любые идеи.

// Конечно, мой forkJoin предназначен для нескольких запросов, а другие доступны для http и хорошо работают, но не для моей собственной наблюдаемой. Я пробовал много комбинаций.

1 Ответ

0 голосов
/ 27 июня 2018

Решение

  public loadRefsCatalog(): Observable<any> {
    return new Observable((observer) => {
      this.dataProvider.loadRefsCatalog().subscribe((res) => {
        this.refsCatalog = res;

        observer.next(true);
        observer.complete();
      });
    });

Ключ next (a_value) и complete (), но чаще всего next () для forkJoin.

        observer.next(...whatever you want to send to forkJoin...);
...