L'obtention de Données de Firebase Objet avec Angular2, angularfire2 et Tapuscrits
Im travaillant actuellement sur un Projet avec Angulaire 2 et angularFire2.
Ma base de données ressemble à ceci dans Firebase:
base: données/
[{Name:test1},
{Name:test2},
{Name:test3}]
Tous les éléments ont également la Firebase clé.
Maintenant im essayant d'obtenir les données de la Firebase avec le Observabels de RX.
Quand je fais cela, je reçois les noms dans la Console:
let items= af.database.list('/data').map(i=>{return i});
items.forEach(i=>i.forEach(e=>(console.log(e.name))));
De sortie: test1,test2,test3. Tout Fonctionne.
Mais quand je fais ceci:
console.log(items.first());
- Je obtenir un FirebaseListObservable dos.
Comment puis-je obtenir seulement le Premier Objet de la FirebaseListObservable?
Comment puis-je modifier des Éléments dans la liste? comme:
items[0].name=test3
Et Comment puis-je obtenir le Firebase Clé à partir d'un Élément
comment puis-je obtenir Le firebaseKey à partir d'un Élément dans la liste?
OriginalL'auteur jufabeck2202 | 2016-07-08
Vous devez vous connecter pour publier un commentaire.
Observables
sont asynchrone, structure de données, ce qui signifie que vous ne savez pas vraiment quand les données seront disponibles, vous devez vous abonner à laObservable
et attendre que les données deviennent disponibles dans lanext
gestionnaire.De plus, un
Observable
n'est pas statique, de sorte que vous ne pouvez pas l'index en tant que tel. Si vous avez besoin seulement le premier élément, puis je dirais plutôt que vous extraire de la valeur et de le modifier avec unflatMap
+first
+map
combinaison.Vous êtes les bienvenus!
Que faire si vous voulez faire une boucle sur les éléments, plutôt que de simplement le premier?
ensuite, vous utilisez
flatMap
au lieu defirst
Vous avez flatMap. Il suffit donc de prendre le premier ()?
OriginalL'auteur paulpdaniels