CycleJS HTTP-запрос $ не вызывает запросы
Я новичок в CycleJS, я пытаюсь прочитать некоторые данные из драйвера HTTP и записать их, когда пользователь вносит изменения. У меня есть следующее:
Первоначальный запрос - это просто GET.
const initialRequest$ = Observable.just({url: ...});
Основываясь на некоторых намерениях пользователя, я обновляю свою модель и создаю (или пытаюсь создать хотя бы) запрос PATCH для обновления удаленных данных.
const patchRequests$ = intent$
.withLatestFrom(model$, (intent, model) => {
const payload = ... // get payload from model and intent
return {
url: `my/url/${target}`,
method: 'PATCH',
send: {
// payload...
},
};
});
Затем я объединяю потоки вместе с:
const request$ = Observable.merge(initialRequest$, patchRequests$);
и вернуться request$
к драйверу HTTP.
Мой первоначальный запрос проходит нормально, и я получаю данные в исходном потоке HTTP. Но патчи никогда не срабатывают.
Я могу подписаться на request$
с чем-то вроде:
request$.subscribe((req) => console.log(req));
И я увижу все мои первоначальные запросы и запросы на исправления, зарегистрированные в консоли. Но все равно запросы на патч никогда не отправляются.
Что я здесь не так делаю?
Благодарю.
1 ответ
Дать eager: true
как одно из свойств объекта запроса. В противном случае HTTP-драйвер игнорирует запросы, которые не имеют соответствующего ответа $, ожидающего его в приложении.
Это изменится в будущей версии Cycle.js, однако все запросы будут нетерпеливыми, и вы не увидите эту проблему.