Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

268
Vistas
Cómo usar un condicional para todos los niños en Firebase

El siguiente código es lo que he estado tratando de hacer, pero dbRef.on("child_added... ejecuta después de la verificación final. Sé por qué sucede esto, entonces, ¿cómo podría hacer un condicional similar con cada niño en una ruta de base de fuego en una vez y luego ejecute una verificación después. Gracias.

 let dbRef = firebase.database().ref("/ExamplePath"); let found = false; dbRef.on("child_added", (child) => { if (child.val().test == testingVal) { console.log("Found One!"); found = true; } }); if (found) { console.log("Finished!"); }else{ console.log("Nope!"); }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El controlador child_added se llama para cada hijo, y no hay forma de saber si este fue el último hijo. Para eso querrás escuchar el evento de value .

Así que una de las opciones es:

 let dbRef = firebase.database().ref("/ExamplePath"); let found = false; dbRef.on("child_added", (child) => { if (child.val().test == testingVal) { console.log("Found One!"); found = true; } }); dbRef.on("value", (snapshot) => { if (found) { console.log("Finished!"); }else{ console.log("Nope!"); } });

Esto funciona muy bien, y Firebase garantiza que los datos solo se descarguen una vez, a pesar de que se pasan a ambos oyentes.


Si lo prefiere, también puede hacer lo mismo con solo un oyente de value :

 let dbRef = firebase.database().ref("/ExamplePath"); dbRef.on("value", (snapshot) => { let found = false; snapshot.forEach((child) => { if (child.val().test == testingVal) { console.log("Found One!"); found = true; } }); if (found) { console.log("Finished!"); }else{ console.log("Nope!"); } });

El resultado y la eficiencia de ambos enfoques es el mismo, por lo que debe elegir el que sea más conveniente para su aplicación. Por ejemplo, prefiero escuchar los eventos child_ cuando soy responsable de actualizar cada elemento en la interfaz de usuario directamente, ya que el evento child_* me dice directamente qué hacer.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda