Firebase在线/离线代码段的第一个响应始终是“离线”'

时间:2016-11-02 18:10:56

标签: angularjs firebase firebase-realtime-database angularfire

在初始加载时,当Angular应用需要检查Firebase在线/离线是否启用/禁用某些功能时,如何阻止Firebase在第一次回拨时做出响应'离线'

var firebaseRef = new Firebase(FIREBAE_URL);
firebaseRef.child('.info/connected').on('value',
  function(connectedSnap) {
     if (connectedSnap.val() === true) {
       console.log("online");
     } else {
      console.log("offline");
     }
});

1 个答案:

答案 0 :(得分:1)

.info/connected子节点始终以当前连接状态响应。如果您在应用程序的生命周期的早期附加它,Firebase客户端将忙于连接到服务器,因此它将无法连接。

除了可能在生命周期的后期附加侦听器之外,无法更改此行为。