我将如下所示的Firebase数据库侦听器添加到我的flutter项目中:
databaseReference = database.reference().child("community_board");
databaseReference.onChildAdded.listen(_onEntryAdded);
databaseReference.onChildChanged.listen(_onEntryChanged);
对于Kotlin和迅捷的firebase,我必须在onPause()/ onDestroy()中删除侦听器。我可以知道如何在扑朔迷离中删除Firebase数据库侦听器吗?
答案 0 :(得分:3)
var sub1 = databaseReference.onChildAdded.listen(_onEntryAdded);
var sub2 = databaseReference.onChildChanged.listen(_onEntryChanged);
sub1.cancel();
sub2.cancel();
如果您在小部件中包含此代码,则可以使用
@override
void dispose() {
super.dispose();
sub1?.cancel();
sub2?.cancel();
}