【问题标题】:Firebase: set data when user navigates away from page?Firebase:当用户离开页面时设置数据?
【发布时间】:2016-10-04 10:23:22
【问题描述】:

我想知道当用户离开页面时是否可以在 firebase 数据库中设置一些数据。我知道 window.onbeforeunload 但这似乎不起作用,因为在调用此方法后立即取消了 firebase 调用(因为用户导航离开)。还是这样?

用例是这样的:我正在构建一个聊天应用程序,用于跟踪聊天室中的用户。因此,我需要知道用户何时离开该聊天室 - 用户离开该聊天室的方法之一是导航离开或关闭浏览器窗口。

解决方法是让每个用户更新一个带有间隔(例如 10 秒)的时间戳,并在客户端处理它(如果用户的时间戳早于 10 秒,则他必须离开)。但这会产生大量的开销网络流量,而且似乎效率不高..?

PS:我的目标是 Chrome(桌面和移动),但如果我们能找到一个跨浏览器工作的解决方案会很好:)

【问题讨论】:

    标签: javascript firebase firebase-realtime-database


    【解决方案1】:

    你正在寻找 onDisconnect()

    在这里你可以找到如何使用它 https://firebase.google.com/docs/database/web/offline-capabilities#how-ondisconnect-works

    基本上是在用户断开连接时调用的 Firebase 事件

    它可用于在聊天组中显示哪些用户仍处于活动状态,哪些用户仍处于活动状态......等等

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-10
      • 2019-10-01
      • 2013-07-04
      相关资源
      最近更新 更多