Я обновляю приложение до RxJS из Promises, и я не совсем уверен, на правильном ли я пути.
Случай: задан ModalComponant, который загружается при отправке HTTP-запроса и уничтожается при получении ответа. Итак, я делаю следующее
public post(uri: string, body: object, showLoading: boolean = true, params: object = {}): Observable<any> {
if (showLoading) {
this.toggleModal('open');
}
return this.http.post(
this.createUrl(uri),
body,
this.createOptionsWrapper(params)
)
.pipe(
this.toggleModal('close'),
catchError(err => this.handleError(err))
);
}
toggleModal () принимает 1 параметр и на его основе открывает / закрывает модальное окно. Я понимаю, что конвейерные операторы должны возвращать тип OperatorFunction. Как вы считаете, какой оператор RxJS наиболее подходит для вышеприведенного случая, когда я не касаюсь самого Observable, я просто хочу сделать его конвейерным, чтобы он работал в заданной последовательности? Может, стоит самому создать собственный? Конечно, возвращаемый здесь Observable будет снова передан по конвейеру, где бы ни был введен сервис.
finalize
- person chrisbajorin   schedule 15.04.2021