Swift viewcontroller firebase数据库观察者重复调用
在我的xcode项目中,我有两个视图控制器:A和B,它们都连接到同一个firebase引用节点,并侦听相同的数据 我的问题是,例如:如果我在这两个视图控制器之间来回7次(或在A和B视图控制器之间来回7次),一旦我单击按钮执行操作,就会触发firebase观察者,视图控制器A会触发7次,因为我添加了Swift viewcontroller firebase数据库观察者重复调用,firebase,swift3,uiviewcontroller,triggers,firebase-realtime-database,Firebase,Swift3,Uiviewcontroller,Triggers,Firebase Realtime Database,在我的xcode项目中,我有两个视图控制器:A和B,它们都连接到同一个firebase引用节点,并侦听相同的数据 我的问题是,例如:如果我在这两个视图控制器之间来回7次(或在A和B视图控制器之间来回7次),一旦我单击按钮执行操作,就会触发firebase观察者,视图控制器A会触发7次,因为我添加了 print("action is triggered") 在视图控制器A中,此行在调试器中打印7次。我一直想弄明白为什么7次,计数保存在哪里?我尝试使用firebase提供的文档删除firebase
print("action is triggered")
在视图控制器A中,此行在调试器中打印7次。我一直想弄明白为什么7次,计数保存在哪里?我尝试使用firebase提供的文档删除firebase observer,但没有成功,可能是在这些视图控制器之间来回穿梭造成了问题。这些视图控制器从未被删除过,但我从未记得我需要删除视图控制器!我试图在这里找到任何讨论并用谷歌搜索,但我没有运气
我所要做的就是检测firebase数据库中的数据变化,如果数据库中有什么变化,按钮功能就会改变,并执行某些不同的功能。一切正常,直到我发现这个循环问题。还有其他人遇到过同样的问题吗?我刚刚发现,要删除重复过程,我可以使用firebase文档提供的remove observer,重复问题得到解决,您的提示非常有效,我在谷歌上搜索了主题提示,并在堆栈流中找到了答案。谢谢每次显示控制器时,您可能都在设置新的列表器。你能展示你的代码吗?