Использование NGRX / store и firebase впервые.
код в сервисе бронирования выглядит так:
reservations: FirebaseListObservable<Reservation[]> = null;
с помощью такого метода создания:
createReservation(reservation: Reservation): FirebaseListObservable<Reservation> {
return this.reservations.push(reservation)
}
эффект NGRX / выглядит так:
@Effect()
create$: Observable<Action> = this.actions$
.ofType(reservationsActions.CREATE)
.map((action: reservationsActions.Create) => action.payload)
.switchMap((reservation) =>
this.reservationsService.createReservation(reservation)
.map( (createdReservation: Reservation) => new reservationsActions.CreateSuccess(createdReservation))
);
Я получаю эту ошибку
Type 'ThenableReference' is not assignable to type 'FirebaseListObservable<Reservation>'
я пробовал
:Observable<any>
Я понял это
Property '_isScalar' is missing in type 'ThenableReference'.
все вещи NGRX подключены правильно, только когда я пытаюсь использовать его с angular-fire, у меня возникают проблемы, поскольку это не ваш типичный CRUD ... GET, POST и т. д.
есть хороший пример использования NGRX и angular-fire.
createReservation(reservation: Reservation): Observable<any> {
return this.db.list(`${this.basePath}/${this.uid}`).push(reservation);
}