Soy bastante nuevo en la realización de consultas de base de datos en tiempo real de Firebase y reacciono de forma nativa. Tengo una lista de usuarios en mi base de datos en tiempo real y algunos de ellos tienen una lista de propiedades como se muestra a continuación. Me gustaría obtener estas propiedades, así como los usuarios de las propiedades, y colocarlas en una matriz usando React Native. No estoy seguro de cómo hacer esto.
Esto es lo que tengo hasta ahora:
database().ref(`users/`).once(`value`, snapshot =>{ snapshot.forEach(function(childSnapshot){ if(childSnapshot.val().properties != null) { } });Me gustaría que el error se muestre como:
[{uid1,propiedad1}, {uid1,propiedad2}, {uid2,propiedad1}, {uid2,propiedad2}, {uid2,propiedad3},...., {uidX,propiedadX}]
Encuentro que en casos como este, realmente ayuda dar buenos nombres a sus variables:
database().ref(`users/`).once(`value`, snapshot =>{ let properties = []; snapshot.forEach((userSnapshot) => { if (userSnapshot.hasChild("properties")) { userSnapshot.child("properties").forEach((propertySnapshot) => { properties.push({ uid: userSnapshot.key, property: propertySnapshot.val() }) }) } }); console.log(properties); });