2016-04-03 9 views
-1

と一致していませんforEachの機能は、私は、このマニュアルと一緒に、次の午前のドキュメント

var ref = new Firebase("https://FIREBASEID.firebaseio.com/users"); 
ref.once("value", function(snapshot) { 
    // The callback function will get called twice, once for "fred" and once for "barney" 

    snapshot.forEach(function(childSnapshot) { 

    // key will be "fred" the first time and "barney" the second time 
    var key = childSnapshot.key(); 
    console.log(key); 

    }); 
}); 

あなたが期待するの例とは異なり取得する

> Fred 
> Barney 

代わりに

> First 
> Last 
> First 
> Last 

上記の名前のそれぞれに含まれるキーはどれですか。

私はこれにfirebase REFを変更することにより、それを修正することができます:なぜ、このドキュメントのように動作していない

var ref = new Firebase("https://FIREBASEID.firebaseio.com/"); 

?あなたはで作業しているデータ構造を提供していない

{ 
    "users": { 
    "fred": { 
     "first": "Fred", 
     "last": "Flintstone" 
    }, 
    "barney": { 
     "first": "Barney", 
     "last": "Rubble" 
    } 
    } 
} 

+1

の例では、あなたを与える 'fred'ない' Fred' - 重要な違い。 – Adam

+0

あなたが説明したことが期待どおりに機能しています。あなたは結果の違いを説明している例を厳密に守っていません。 –

+0

ねえディラン。 Stack OverflowへようこそFirebaseを試してみてください。あなたが気づいたように、あなたはいくつかの否定的なフィードバックを得ています。これを防ぐには、使用している正確なデータとコードを教えてください。エクスポートボタンをクリックすると、Firebaseダッシュボードからデータを取得できます。また、実際に使用するコードを表示するようにしてください。質問に別のコードを入力しないでください。代わりに[データ+コードの最小限のセットで問題を再現](http://stackoverflow.com/help/mcve)とそれらを共有してください。 –

答えて

2

ドキュメントは、データ構造を提供します。答えは、作成したデータ構造が実際に意図したものではないということです。それは次のようなものが考えられます。

{ 
    "users":[{ 
    "First": "Fed", 
    "Last": "Flintstone" 
}, 
{ 
    "First": "Barney", 
    "Last": "Rubble" 
}] 
} 

あなたはおそらくそれがあることを意味し:

{ 
"users":{ 
    "Fred": { 
     "First": "Fred", 
     "Last": "Flintstone" 
    }, 
    "Barney": { 
     "First": "Barney", 
     "Last": "Rubble" 
    }, 
    } 
} 
関連する問題