Проблема с использованием catchError с коллекцией RxFire firestoreData - PullRequest
0 голосов
/ 19 января 2019

Я хочу иметь возможность отвечать на ошибки при вызове collectionData.Я добавил catchError, но он никогда не вызывается.Фактически, collectionData выдает результат без элементов.

export const bundleEpic = action$ => action$.pipe(
  ofType(BUNDLES_LOAD),
  tap(action => console.log(`Received action: type=${action.type}`)),
  switchMap(() => (
    collectionData(bundlesRef, 'id')
    .pipe(
      tap(docs => console.log(`bundleEpic: size = ${docs.length}`)),
      map(docs => publicBundlesLoadSuccess(docs)),
      catchError(error => from(publicBundlesLoadFail(error))
    )
  ))
)

Как правильно обрабатывать ошибки с использованием collectionData?

1 Ответ

0 голосов
/ 19 января 2019

catchError будет отлавливать ошибки, возвращаемые наблюдаемой.В вашем случае это collectionData.Я не знаком с RxFire, но если вы скажете, что collectionData emits a result with no elements, то имеет смысл не вызывать catchError.Пустые результаты все еще считаются (успешными) результатами.Попробуйте сделать collectionData неуспешным, чтобы увидеть, если вы получите ошибку в catchError.

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