ReactFX EventStreams и поведение при воспроизведении?
Есть ли функциональность для EventStream
в ReactFX кэшировать последнее значение, чтобы оно могло быть воспроизведено для новых подписчиков? RxJava Observable
имеет много процедур для выполнения таких задач. Я надеялся EventStream
может иметь похожую функциональность... если я не пропускаю причину, по которой я не хочу делать это в графическом интерфейсе, и я должен придерживаться парадигм только для публикации.
EventStream<Boolean> selectedEvt = EventStreams.changesOf(selected.selectedProperty())
.map(v -> v.getNewValue()).cache(1);
1 ответ
ReactFX не имеет таковых. Идея состоит в том, что если вы хотите запомнить значение, используйте ObservableValue
/ Val
вместо EventStream
, Повернуть ObservableValue
/ Val
в EventStream
когда необходимо. Ваш приведенный выше пример можно переписать проще valuesOf
:
EventStream<Boolean> selectedEvt = EventStreams.valuesOf(selected.selectedProperty());
Потоки созданы valuesOf
эмитировать текущую стоимость базового ObservableValue
сразу после подписки, поэтому они имитируют поведение воспроизведения, которое вы описываете.