Как использовать StreamBuilder с Observable?

Я пытаюсь использовать StreamBuilder, чтобы реагировать на несколько потоков. Итак, я создал Observable, который использую для их объединения:

Observable.merge([stream1, stream2, stream3])

Проблема в том, что я не знаю, как заставить StreamBuilder слушать этот Observable. как мне это сделать?


person Rod    schedule 21.04.2019    source источник


Ответы (1)


Просто объявите свойство в своем классе блока:

Observable<T> get mergedStream => Observable.merge([stream1, stream2, stream3]);

Затем используйте это свойство в качестве источника для свойства stream StreamBuilder.

person BambinoUA    schedule 20.05.2019
comment
Есть идеи о том, как избавиться от этого наблюдаемого? - person Uttam Panchasara; 27.09.2019
comment
Обычно Observables находятся в отдельном классе BLoC, который должен содержать dispose метод. Затем вы можете вызвать dispose в любом нужном вам месте (например, в dispose методе StatefulWidget или как значение параметра dispose класса Provider (требуется плагин провайдера). - person BambinoUA; 27.09.2019