Tengo esta base de datos. Me gustaría obtener solo los valores resaltados en rojo. Cuando haya un niño nuevo con el mismo valor profile_picture: , también me gustaría actualizar la lista.
Me las arreglé para obtener todos los valores, pero todavía no puedo averiguar cómo obtener solo profile_picture: valor de cada niño.
// Initialize Firebase const app = initializeApp(firebaseConfig); const db = getDatabase(); const email = ref(db, 'users/'); onValue(email, (snapshot) => { console.log(snapshot.val()) })PRODUCCIÓN
[ null, { "email": "Test_1_Email", "profile_picture": "Test_1_URL", "username": "Test_1" }, { "email": "Test_2_Email", "profile_picture": "Test_2_URL", "username": "Test_2" } ]Eso no lo puede hacer un solo oyente. ref(db, 'users/') devolverá todo el nodo /users . Si solo desea escuchar la imagen de profile_picture , tendrá que agregar un oyente para la imagen de profile_picture de cada usuario de esta manera:
const userIds = ["u1", "u2"] userIds.forEach(user => { const email = ref(db, 'users/' + user); onValue(email, (snapshot) => { console.log(snapshot.val()) }) })Codifiqué los UID aquí, por ejemplo, pero necesitará conocer los ID de usuario de antemano para usar esto.
Alternativamente, puede simplemente almacenar la información a la que se accede con frecuencia, como el nombre de usuario y la imagen, en un nodo separado.