Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

249
Views
¿Cómo se hace una promesa con la función firebase .on()?

Estoy tratando de usar el método Firebase .on() para verificar cada vez que se crea una nueva cuenta en mi base de datos Firebase en tiempo real. Ahora que estoy cifrando estos datos en la base de datos de Firebase, me gustaría que la primera vez que se carguen los datos de Firebase se descifren usando una función que hice. ¿Es posible que pueda hacer algo como una promesa que me permita hacer esto una vez que Firebase haya cargado todos los datos en mi variable?

 var users2 = database.ref("users/").on("value", (snapshot) => { const usersLst = snapshot.val(); users = usersLst });

Me gustaría agregar algo como esto:

 var users2 = database.ref("users/").on("value", (snapshot) => { const usersLst = snapshot.val(); users = usersLst }).then(() => { console.log(decryptAccounts(users)) });

Una cosa importante que quiero mantener es la función .on() ya que me permitirá verificar constantemente si alguien ha creado una nueva cuenta en la base de datos. ¿Alguien tiene alguna idea de qué otro enfoque podría usar para lograr lo mismo?

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Puede almacenar la referencia en una variable para reutilizarla como sugieren los documentos.

 const databaseRef = database.ref("users/"); // use databaseRef.get() with the correct path to your attribute you want to get // Runs only once databaseRef.get().then((snapshot) => { // Decrypt function }); // Listens to changes var users2 = databaseRef .on("value", (snapshot) => { const usersLst = snapshot.val(); users = usersLst });

Primero obtiene los valores una vez y luego puede descifrarlos, cuando los valores cambian, la función .on se activará nuevamente.

about 4 years ago · Juan Pablo Isaza Report

0

La respuesta que encontré con la ayuda de Dharmaraj fue que puedes hacer esto:

 database.ref("users/").on("value", (snapshot) => { decryptAccounts(snapshot.val()); });

Esto obtendría los valores de la base de datos cada vez y los descifraría.

about 4 years ago · Juan Pablo Isaza Report

0

Simplemente puede agregar las funciones decryptAccounts() dentro on() para que cada vez que se reciba una actualización, pueda ejecutar esa función en esos datos.

 var users2 = database.ref("users/").on("value", (snapshot) => { const usersLst = snapshot.val(); // runs on new value fetched after every update decryptAccounts(usersLst) })
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!