2016-05-13 10 views
2

私は私のキーがありますが、私はFirebaseの子どもたちはどうやって素早く得られますか?

var count = 0 

ref.observeEventType(.Value, withBlock: { snapshot in 

     count += snapshot.childrenCount 
    }) 

を使用しようとすると、それは私にエラーを与えてどのように多くの子供たちを見つけるためにしようとしています。私はこれをどのようにしなければならないのですか?

+0

を試してみてください。それがあるようにそれを残すことはときに何かのアプリにイベントを供給していきます3つの子がある場合は、count = 3ですが、ノードが追加され、次にcount = 3 +新しい子の数が変化するので、何かが変更されるたびに – Jay

答えて

3

あなたが投稿したものは私のために働いています...おそらくDataObjectは期待されていないものでしょう。ブレークポイントを追加し、スナップショットが何であるかを見てテストします。私は、 ああ:

snapshot.value.count 

EDITを:

あなたはので、多分それはどちらか動作しません、それはあなたのために動作しないのと同じ結果が得られるはず...代わりにこれを試すことができます私はあなたが子供の数のプロパティを取得することができない理由を知っていると思う!スナップショットをFDataSnapShotにキャストしてみてください!あなただけの子供がカウントしたい場合それではref.observeSingleEventOfType(.Valueの...その後self.childCount = snapshot.childrenCountを使用し、

ref.observeEventType(.Value, withBlock: { (snapshot: FDataSnapshot!) in 
     count += snapshot.childrenCount 
    }) 
+0

FIRDataSnapshotを意味しましたか? – KawaiiFX

+0

いいえ、FDataSnapshotを意味しましたが、新しいFirebase 2.0 SDKのように見えますが、FIRDataSnapshotに変更されました。 – Jaime

関連する問題