Плохое состояние: поток уже прослушан. (useStream не закрывает поток)
В моем
HookWidget
, Я звоню:
final myData = useStream<MyData>(service.getDataStream(), initialData: {});
К сожалению, при возвращении к тому же экрану / навигации я получаю
Bad state: Stream has already been listened to.
. Вероятно, это связано с тем, что предыдущий поток не закрывается и не может быть прослушан снова.
Почему не
useStream
закрыть поток , или мне нужно это сделать (как ?, он создан в методе сборки, чтобы его можно было закрыть при удалении)? В
service
содержит
StreamController
:
class Service {
final _dataController = StreamController<MyData>();
Stream<Data> getDataStream() {
return _dataController.stream;
}
}