1. ホーム
  2. ジャバスクリプト

[解決済み】空のObservableを返す

2022-04-05 08:25:38

質問

機能 more() を返すことになっています。 Observable 取得要求から

export class Collection {
  public more = (): Observable<Response> => {
    if (this.hasMore()) {
      return this.fetch();
    } else {
      // return empty observable
    }
  };

  private fetch = (): Observable<Response> => {
    return this.http.get("some-url").map((res) => {
      return res.json();
    });
  };
}

この場合、私は以下の場合にのみリクエストを行うことができます。 hasMore() がtrueでないとエラーが発生します。 subscribe() 機能 subscribe is not defined どうすれば空のObservableを返せますか?

this.collection.more().subscribe(
  (res) => {
    console.log(res);
  }, (err) => {
    console.log(err);
  }
);

解決方法は?

すべての回答が古いので、最新の回答をここに掲載します。

RXJSの場合 >= 6

import { EMPTY } from 'rxjs'
return EMPTY;