在我的xcode项目中,我有2个视图控制器:A和B,它们都连接到相同的firebase引用nod,并且监听相同的数据。
我的问题是,例如:如果我在这两个视图控制器之间往返7次(或者我在A和B视图控制器之间往返多次)一旦我点击一个按钮执行一个动作,触发firebase观察者,视图控制器A被触发7次,因为我添加了
print("action is triggered")
在视图控制器A中,此行在调试器中打印7次。我一直想弄清楚为什么计数被保存了7次?我尝试使用Firebase提供的文档删除firebase观察者,但没有运气,也许问题来自于在这些视图控制器之间来回穿梭。这些视图控制器从未被删除,但我从不记得我需要删除一个视图控制器!我试着在这里找到任何讨论并谷歌,我没有运气。
我尝试做的就是检测firebase数据库中的数据更改,如果数据库中发生了某些变化,则按钮功能会发生变化并执行某些不同的功能。一切正常,直到我发现这个循环问题。还有其他人遇到过同样的问题吗?
答案 0 :(得分:0)
我刚刚发现删除重复过程我可以使用firebase文档提供的删除观察器,重复问题解决了,你的提示工作得很好,我搜索主题提示并在堆栈流程中找到答案。感谢