【问题标题】:Firebase RemoveObserver methods does not remove observerFirebase RemoveObserver 方法不会删除观察者
【发布时间】:2017-10-12 16:33:15
【问题描述】:

我正在观察一个值,直到用户注销。但是当我打电话时

self.ref.removeObserver(withHandle: self.handle)
self.ref.removeAllObservers()

它们都不起作用。我一次用一个。

如何删除 Firebase Database Ref 上的观察者?

BR,

埃尔德姆

【问题讨论】:

  • 你在哪里调用这个函数?用什么方法?
  • @3stud1ant3 我在我的自定义方法中调用这个函数。我需要在某个特别的地方称呼它吗?
  • 在您的视图控制器的viewDidDisappear 方法中尝试此代码
  • @3stud1ant3 我已经在我的单例类中调用了该方法,但没有成功,另一方面,我已经按照你所说的在 viewDidDisappear 中调用了,看起来还可以。谢谢你。我不确定这是一个错误还是什么?

标签: ios swift firebase firebase-realtime-database


【解决方案1】:

目前我认为您的ref 没有正确设置,因为您在自定义方法中调用了此函数。您应该在视图控制器的 viewDidDisappear 方法中调用它

根据 Firebase 网站

你应该在viewDidDisappear方法中移除监听器或观察者

如果您的控制器在视图已同步数据时仍在同步数据 消失了,你在浪费带宽和内存

在此处了解更多信息https://firebase.googleblog.com/2015/10/best-practices-for-ios-uiviewcontroller_6.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多