so versuche ich Daten aus der Feuerbasis mit dem folgenden Code abrufen“Firebase - Wie Daten aus .Sobald Anruf abzurufen
loadblah(){
var valueArray = [];
valueArray = firebase.database().ref("/Users/johnny/files/").once('value', function(snapshot){
console.log(snapshot.val()); //First output
return snapshot.val();
});
console.log(valueArray); //Second output
}
Wie auch immer, wie Sie einige console.log der für das Debuggen ive hinzugefügt sehen können, und sie bekommen völlig unterschiedliche Ergebnisse.
erste Ausgabe ist, was ich hatte gehofft, für, zB { fileOne: {title: blah, text: blah}, fileTwo... }
und so weiter. aber für die zweite Ausgabe, bekomme ich diese.
Haben Sie eine Idee, wie Sie Daten in snapshot.val()
abrufen können? Jede Hilfe würde sehr geschätzt werden, ich bin ziemlich neu dazu.
EDIT: Noch besser wäre es, wenn Sie mir irgendwie zeigen können, wie für die Synchronisation Sachen die .on Funktion nutzen zu können, die
Ohh, ich verstehe! Der Functon (Snapshot) wird also erst aufgerufen, nachdem die Elemente heruntergeladen wurden. Wenn ich die console.log() innerhalb der Funktion setzen, funktioniert es wie erwartet. Schnelle Frage, wie setze ich einen Zustand innerhalb dieser Funktion? es scheint mich nicht zu lassen - zB (this.setState ist undefiniert) –
@RyanTurnbull Weird ... as [diese Anleitung zeigt] (https://firebase.googleblog.com/2016/01/the-beginners-guide -to-react-native-and_84.html? m = 1) sollte es auch möglich sein, 'this.setState' von dort aufzurufen. –
yeah es sagt this.setState ist keine Funktion und ist undefined –