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

212
Vistas
Firebase Realtime Database no guarda datos cuando agrego "ubicación.reemplazar"

Estoy tratando de enviar datos a la base de datos en tiempo real de Firebase y después de que los datos se envían (y se guardan), el navegador debería abrir otra página. He usado la función "ubicación.reemplazar ()" para abrir la página siguiente, sin embargo, agregar la línea ubicación.reemplazar hace que los datos no se guarden en la base de datos en tiempo real de Firebase.

Aquí está mi código

 var updates = {}; updates['/users/' + document.getElementById('username').value] = data; firebase.database().ref().update(updates); console.log("Saved successfully") location.replace("nextpage.html");
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

La función de update es asíncrona; llevará algún tiempo completarlo. Si desea esperar hasta que finalice la actualización, deberá usar la promesa que devuelve:

 var updates = {}; updates['/users/' + document.getElementById('username').value] = data; firebase.database().ref().update(updates) .then(() => { console.log('Saved successfully'); location.replace('nextpage.html'); });

O con async / await :

 async function someFunction () { var updates = {}; updates['/users/' + document.getElementById('username').value] = data; await firebase.database().ref().update(updates); console.log("Saved successfully") location.replace("nextpage.html"); }
about 4 years ago · Juan Pablo Isaza Denunciar

0

la actualización parece ser una función asíncrona, devolviendo una promesa. por lo que debe manejarlo adecuadamente. De lo contrario, la llamada a "ubicación" puede llegar antes de que finalice la actualización.

Cámbialo así:

 firebase.database().ref().update(updates).then(() => { console.log("Saved successfully") location.replace("nextpage.html"); }).catch(error => {console.log('Error:', error)})

Si no desea usar la promesa, proporcione un argumento adicional a la función de actualización que servirá como una función de devolución de llamada, es decir, se llamará cuando finalice la actualización:

 firebase.database().ref().update(updates, function() { console.log("Saved successfully") location.replace("nextpage.html"); })
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