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

849
Vistas
¿La forma correcta de eliminar un usuario con react-native-firebase de Auth y Firestore a la vez?

Estoy tratando de eliminar a un usuario de Auth y Firestore al hacer clic en el botón de una sola vez usando react-native-firebase. Mi problema en este momento es que no está eliminando el documento 'usuario' de Firestore. PERO, parece que estoy eliminando al usuario de Auth.

Además, cuando presiono el botón que llama a deleteUserFunc, recibo el error:

"null no es un objeto (evaluando '(0, _auth.default)().currentUser.uid')"

(UID tiene una identificación válida en la carga de la página)

 const [_, setUser] = useContext(UserContext); const uid = auth().currentUser.uid; const deleteUserFunc = async () => { await deleteAccount(); } async function deleteAccount() { auth().currentUser.delete().then(() => { db.collection('users') .doc(user.uid) .delete() }).catch((error) => { console.log(error, "error") }).finally(() => setUser((state) => ({ ...state, isLoggedIn: false }))) }

¿Cómo puedo eliminar de Firestore para este usuario, así como mejorar el código que he escrito?

Cualquier ayuda es apreciada - ¡gracias por su tiempo!

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Supongo que configuraste tu variable de user para que apunte a auth.currentUser , que se vuelve null cuando eliminas al usuario actual. Por lo tanto, deberá invertir las operaciones (primero eliminar el documento, luego el usuario), o puede capturar el UID en una variable local antes de eliminar el usuario.

Este último se vería así:

 async function deleteAccount() { const uid = auth().currentUser.uid; // 👈 auth().currentUser.delete().then(() => { db.collection('users') .doc(uid) // 👈 .delete() }).catch((error) => { console.log(error, "error") }).finally(() => setUser((state) => ({ ...state, isLoggedIn: false }))) }
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