Firebase中的引用属性

时间:2015-11-06 15:34:27

标签: firebase

firebase是否提供引用属性概念?

如果我想将我的在线状态(在线|离线|离开)状态通知给我所在的所有朋友列表,一个易于实现的是定义引用属性说user @ status以及它的值是否已更改可以在任何定义的地方触发更改状态。这可以在Firebase中实现吗?

我正在尝试实施聊天用户状态更新。我们维护用户列表

Users / user-id-1 / [user-id(friend),name,online-status],[user-id(friend),name,online-status],...

Users / user-id-2 / [user-id(friend),name,online-status],[user-id(friend),name,online-status],...

如果某个特定用户上线,那么我们目前需要在循环中手动更新其所有用户的状态,以便他们获得状态更新...

有没有更好的方法来实现这样的后端触发器,如果​​一个字段被更改,则更新其他字段...我们可以定义这样的规则或定义某种引用指针吗?

1 个答案:

答案 0 :(得分:0)

users
   uid_1234
     email: thing@yipee.com
     online: true
  uid_5678
     email: stuff@yahoo.com
     online: false

每个用户都会观察用户节点的更改。

当用户登录时,将在线状态设置为true。将通知所有其他用户此用户状态已更改,并可相应更新其UI。

附注:在用户登录时将onDisonnect观察者添加到用户在线状态节点,以便在断开连接时将其设置为false。