快照如何在Firebase中运行

时间:2016-03-06 05:22:05

标签: swift firebase

如果我们有像

这样的数据集
"user":{
     "A":"1"
     "B":"2"
     "C":"3"
     ...
}

当我们打电话给Swift时:

let ref = Firebase(url:"something/user")
ref.observeEventType(.Value, withBlock: { snapshot in
    print(snapshot.value)
})

我们可以看到快照包含数据库中的所有数据。快照是否动态调用Firebase中的每个数据来提供值?或者它一次获取所有数据并保存在本地? 换句话说,我们是否可以通过Firebase获取部分数据(例如只有A,B,如果我们再次调用它,快照将获取C,D)?我们别无选择,只能一次获取扁平数据吗?

2 个答案:

答案 0 :(得分:2)

致电时:

ref.observeEventType(.Value

您正在注册以监控数据库中位置的值。最初,只要该位置的值发生更改,服务器就会将该值的快照发送给客户端。

在Firebase数据库中,您只能获得完整的节点。无法获得部分节点。

答案 1 :(得分:0)

您可以使用queryOrderedByKey,queryOrderedByValue或queryOrderedByChild等方法对数据进行排序。然后使用queryLimitedToFirst,queryLimitedToLast,queryStartingAtValue,queryEndingAtValue或queryEqualToValue等方法点亮结果数。

更多信息请阅读Firebase文档: https://firebase.google.com/docs/database/ios/lists-of-data