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 сразу после подписки, поэтому они имитируют поведение воспроизведения, которое вы описываете.

Другие вопросы по тегам