Эффект должен взять полезную нагрузку и показать ее в диалоговом окне.
После того, как диалог ЗАКРЫТ, он должен что-то опубликовать и отправить новое действие.
Проблема в том, что действие отправляется до того, как я закрою диалоговое окно.
@Effect()
bookTable$ = this.actions$.pipe(
ofType(BookTableActionTypes.BOOK_TABLE),
map(action => action.payload),
exhaustMap((booking: Booking) => this.dialog.open(BookTableDialogComponent, {
width: this.window.responsiveWidth(),
data: booking.booking,
}).afterClosed()
.pipe( () => this.bookTableService.postBooking(booking),
map((res: any) => new BookTableSuccess(res)),
catchError(error => of(new BookTableFail({error: error})))
)));
.pipe( () => this.bookTableService.postBooking(booking),
map((res: any) => new BookTableSuccess(res)),
catchError(error => of(new BookTableFail({error: error})))
)));
Приведенный выше код должен выполняться только после закрытия диалога.