在此@ngrx 示例中,谁订阅了 loadCollection$ 效果?

Who is subscribing to loadCollection$ effect in this @ngrx example?

我不明白谁在订阅效果 loadCollection$ 以及在这个 @ngrx 示例中这个 observable 是如何启动的。有人可以解释一下吗?

@Effect()
  loadCollection$: Observable<Action> = this.actions$
    .ofType(collection.ActionTypes.LOAD)
    .startWith(new collection.LoadAction())
    .switchMap(() =>
      this.db.query('books')
        .toArray()
        .map((books: Book[]) => new collection.LoadSuccessAction(books))
        .catch(error => of(new collection.LoadFailAction(error)))
    );

由于

,这是一个自启动的可观察对象

ofType(collection.ActionTypes.LOAD)

@ngrx 效果框架订阅 loadCollection$