如何解决错误状态:流已被收听 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;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。