flutter - Flutter BLoC (flutter_bloc) 是否与 onDispose 等效?
问题描述
我使用 flutter_bloc 创建了一个 BLoC,我在其上收听流。当父小部件被释放(因此 BLoC 对象)时,我想关闭我的流。
class ChatBloc extends Bloc<ChatEvent, ChatState> {
//..bloc params..//
ChatBloc(this.chatId) {
this.add(MarkAsRead());
subscription = messagesFirestoreRepository.chatMessages(chatId).listen((messages) {
this.add(UpdateMessages(messages));
});
} //I WANT TO CLOSE THIS WHEN THE BLOC GETS DISPOSED OR DEINITED
//..other stuff..//
}
flutter_bloc 或 'Any' 类是否具有 dispose 或 Swift 的 deinit 等价物?
谢谢!
解决方案
您可以覆盖该close
方法:
class ChatBloc extends Bloc<ChatEvent, ChatState> {
@override
Future<void> close() {
// Release resources here
super.close();
}
}
推荐阅读
- react-native - 使用 npm 安装 expo-cli --global 进行反应设置,出现错误
- javascript - Sendemail 函数:要处理的行数
- python - ModuleNotFoundError:没有名为“SpecAugment”的模块
- node.js - save() 被调用一次,但在猫鼬中第一次被执行两次
- laravel - 不同数据库连接中的 has 或 has 不起作用,查询相关模型的替代方法是什么(在跨数据库连接中)?
- rxdb - pullQueryBuilder 中的 Doc 始终为空
- ios - UIView.animate 不在一个功能上制作动画
- kotlin - 流程先等待,然后在后台处理其余的
- mysql - Wrong Create Value in SQL
- amazon-web-services - AWS No space left on device