是如何工作的。如果我们有像快照火力地堡
"user":{
"A":"1"
"B":"2"
"C":"3"
...
}
当我们在斯威夫特调用数据集:
let ref = Firebase(url:"something/user")
ref.observeEventType(.Value, withBlock: { snapshot in
print(snapshot.value)
})
我们可以看到快照都有从数据库中的所有数据。快照是否动态调用Firebase中的每个数据以提供值?或者它一次获取所有数据并保存在本地? 在另一个字,我们可以有从火力地堡的方式仅提取部分数据(如只有A,B,如果我们再次调用它,快照将获取C,d)?我们是否别无选择,只能一次获取平坦的数据?
这个问题不清楚一点点,但如果你问,如果你能读值一次一个,答案是肯定的。 .childAdded一次读入每个孩子,然后每次添加新孩子时都会触发。另外,如果您知道数据的特定路径,则可以读入该节点。例如;用户和密钥的列表是他们的名字和值是他们的姓氏(这是一个*坏*的想法,但为了清晰起见使用它),并想知道用户鲍勃的价值是什么。 ref是let ref = Firebase(url:“user/bob”)。你的快照将包含鲍勃的钥匙和他们的姓氏的值。 – Jay
@Jay,我很抱歉,您对此不清楚。但是,我的意思是,当数据集发生变化或有新数据进入时,不会读取数据。我所要求的是假设我们有一个大型数据集。我们可以部分阅读它以节省网络的一些流量吗? –