Firebase:observeEventType()只返回一个子节点

时间:2016-06-16 08:04:17

标签: ios swift firebase

我试图从https://sizzling-heat-9137.firebaseio.com/users抓取孩子,其中有4岁。这就是我正在做的事情:

  let ref = Firebase(url:"https://sizzling-heat-9137.firebaseio.com/users")

  ref.observeEventType(.ChildAdded, withBlock: {
  (snapshot) in
  print("Snapshot: \(snapshot)")
  })

根据Firebase上的指南,这应该给出每个孩子(4)及其数据的快照,但相反,我只获得一个孩子的快照,称之为 X (第一个)在/users)按顺序添加但不是第一个。

当我snapshot.childrenCount时,我得到7,这是第一个孩子 X 中的孩子数。那不应该是4,这是/users的孩子总数吗?

我在这里做坏事还是可能出现什么问题?我在模拟器和我的真实设备上都试过了。

2 个答案:

答案 0 :(得分:0)

我认为您必须将observeEventTypeChildAdded更改为FIRDataEventType.Value

然后您可以将快照用作词典(例如):

tempUser.firstName = snapshot.value!["firstname"] as! String

答案 1 :(得分:-1)

它会给出指定网址的子女数量。只需检查你的url是指向那个节点还是指向节点的基础。