我希望在我的应用中有一个实时书签计数。因此,对于每个项目,我为其书签计数设置了一个新的firebase侦听器:
ref.child('bookmark-count').child(ref).on('value', function(){ ... });
我为当前在视图中的每个项目(具有自己的引用)运行此命令。
现在,当用户离开此视图时,我想断开所有同步。 我以为在做什么
ref.off()
会做到这一点,但事实并非如此。但是,具有更多的特异性:
ref.child('bookmark-count').child(ref).off();
这可以按预期工作。
当用户滚动时,我没有跟踪我正在同步的所有书签。是否有一种快速方法可以杀死firebase节点下的所有事件,包括其子节点?
谢谢!
答案 0 :(得分:1)
不幸的是,没有简单的方法可以做到这一点。 Firebase会删除子节点的侦听器,如Unlink listener for parent does it applied to children in Firebase
所示我的建议是跟踪所有听众,以便您可以相应地删除它们。所有那些听众都是必要的,还是有办法让你改进现有的设计?如果您显示您的代码我很高兴看一看。