Я рассмотрел следующий вопрос SO: Что такое "Горячие и холодные наблюдаемые" ?
Подводя итог:
- холодный наблюдаемый испускает свои значения, когда у него есть наблюдатель, чтобы потреблять их, т.е. последовательность значений, полученных наблюдателями, не зависит от времени подписки. Все наблюдатели будут использовать одну и ту же последовательность значений.
- горячий наблюдаемый испускает значение независимо от его подписок, т.е. значения, полученные наблюдателями, являются функцией времени подписки.
Тем не менее, я чувствую, что горячий и холодный все еще является источником путаницы. Итак, вот мои вопросы:
-  Все ли rx наблюдаемые холодные по умолчанию (за исключением предметов)? Я часто читаю, что события являются типичной метафорой для горячих наблюдаемых, но я также читал, что Rx.fromEvent(input, 'click')является наблюдаемым холодом (?).
-  Существуют ли какие-либо операторы Rx, которые превращают холодные наблюдаемые в горячие наблюдаемые (кроме publishиshare)?Например, как это работает с оператором Rx withLatestFrom? Пустьcold$является наблюдаемым холодом, на котором он был где-то подписан. Будет лиsth$.withLatestFrom(cold$,...)быть горячим наблюдаемым?Или, если я сделаю sth1$.withLatestFrom(cold$,...), sth2$.withLatestFrom(cold$,...)и подписаться наsth1иsth2, всегда буду видеть одно и то же значение дляsth?
-  Я думал, что Rx.fromEventсоздает холодные наблюдаемые, но это не так, как упоминалось в одном из ответов. Тем не менее, я по-прежнему смущен этим поведением: codepen.io/anon/pen/NqQMJR?editors=101. Различные подписки получают разные значения от одного и того же наблюдаемого. Разве не было событиеclick?



