【发布时间】:2019-05-23 21:44:46
【问题描述】:
在我的:
override func viewWillAppear(_ animated: Bool)
我这样创建我的 Firebase 观察者:
poolsRef.child(pID).child("lock").observe(.value, with: { snapshot in
boxesRef.child(pID).observe(.value, with: { snapshot in
coordRef.child(pID).child("x").observe(.value, with: { snapshot in
coordRef.child(pID).child("y").observe(.value, with: { snapshot in
poolsRef.child(pID).child("Winner").observe(.value, with: { snapshot in
playersRef.child("pID").observe(.value, with: { snapshot in
然后在
override func viewDidDisappear(_ animated: Bool)
我调用removeAllObservers:
coordRef.removeAllObservers()
poolsRef.removeAllObservers()
boxesRef.removeAllObservers()
playersRef.removeAllObservers()
问题是当我离开创建所有观察者的视图时,甚至认为在 viewDidDisappear 中调用了 removeAllObservers() 我完全没有不同的视图,如果我直接去 Firebase 并进行更改关于与上述观察者相关的数据,我可以看到应用程序仍在侦听不应该的时候!?
我该如何解决这个问题!!
【问题讨论】:
标签: ios swift firebase firebase-realtime-database observers