2016-04-03 12 views
-1

verfolge ich zusammen mit dieser Dokumentation:forEach Funktion nicht mit Dokumentation

https://www.firebase.com/docs/web/api/datasnapshot/foreach.html

Grundsätzlich, wenn ich das Beispiel wie folgt kopieren:

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); 

    }); 
}); 

Im Gegensatz zum Beispiel, wo man erwarten würde zu bekommen

> Fred 
> Barney 

Ich bekomme stattdessen

> First 
> Last 
> First 
> Last 

Welches sind die Schlüssel in jedem der oben genannten Namen.

Ich kann es beheben, indem die Feuerbasis ref zu diesem Wechsel:

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

Warum dies nicht wie die Dokumentation zu arbeiten?

+1

Das Beispiel gibt Ihnen 'fred' nicht' Fred' - einen wichtigen Unterschied. – Adam

+0

Was Sie beschrieben haben funktioniert wie erwartet. Sie folgen dem Beispiel nicht genau, was den Unterschied im Ergebnis erklärt. –

+0

Hey Dylan. Willkommen bei Stack Overflow und danke, dass Sie Firebase ausprobieren. Wie Sie vielleicht bemerkt haben, erhalten Sie ein negatives Feedback. Um dies zu verhindern, hilft es normalerweise, wenn Sie uns die genauen Daten und den Code geben, den Sie verwenden. Sie können die Daten von Ihrem Firebase-Dashboard abrufen, indem Sie auf die Schaltfläche Exportieren klicken. Und stellen Sie sicher, dass Sie den Code zeigen, den Sie tatsächlich verwenden. Geben Sie keinen anderen Code für die Frage ein. Stattdessen [reproduzieren Sie Ihr Problem in einer minimalen Menge von Daten + Code] (http://stackoverflow.com/help/mcve) und teilen Sie diese. –

Antwort

2

Die Dokumente stellen auch eine Datenstruktur:

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

Sie nicht die Datenstruktur mit Sie arbeiten zur Verfügung gestellt haben. Die Antwort ist, dass die Datenstruktur, die Sie erstellt haben, nicht das ist, was Sie eigentlich beabsichtigt haben.

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

, wenn man es wohl gemeint sein: Es könnte etwas ähnliches wie das seine

{ 
"users":{ 
    "Fred": { 
     "First": "Fred", 
     "Last": "Flintstone" 
    }, 
    "Barney": { 
     "First": "Barney", 
     "Last": "Rubble" 
    }, 
    } 
}