#dart #rxdart
#dart #rxdart
Вопрос:
Я пытаюсь использовать StreamBuilder для реагирования на несколько потоков. Итак, я создал Observable, который я использую для их объединения:
Observable.merge([stream1, stream2, stream3])
Проблема в том, что я не знаю, как заставить StreamBuilder прослушивать это наблюдаемое. Как мне это сделать?
Ответ №1:
Просто объявите свойство в своем блочном классе:
Observable<T> get mergedStream => Observable.merge([stream1, stream2, stream3]);
А затем используйте это свойство в качестве источника для свойства stream StreamBuilder.
Комментарии:
1. Есть идеи о том, как распорядиться этим наблюдаемым?
2. Обычно
Observables
находятся в отдельном блочном классе, который должен содержатьdispose
метод. Затем вы можете позвонитьdispose
в любое место, которое вам нужно (например. вdispose
методеStatefulWidget
или как значениеdispose
параметраProvider
класса (требуется плагин поставщика).