Firestore web: eliminar documento por id

Hoy ando trabajando con algunas cosas de Firebase, específicamente migrando de Realtime database a Firestore y me confundí un poco al eliminar un documento.

Por ello es que en este post te mostraré cómo eliminar un documento (de una colección) a través de su ID al usar Firestore Database en la versión web.

Obteniendo referencia al documento

Antes de eliminar el documento debemos tener una referencia al mismo. Para ello necesitamos el nombre de la colección y su ID (se puede obtener de distintas maneras, supongo, pero esto me funcionó a mí y siento que con el ID no se falla).

Necesitamos entonces invocar a doc, pasando la base de datos y la ruta del mismo. En mi caso quiero eliminar a un usuario de mi colección usuarios así que:

const referencia = doc(bd, "usuarios", usuario.id);

No te confundas. La variable usuario es una variable que tiene los datos del usuario registrado en mi base de datos, y entre ellas está el id.

Ese id se lo puse yo al obtenerlo desde la snapshot, fíjate en la línea 4 que estoy tomando el id de la snapshot:

const instantanea = await getDocs(this.coleccionUsuarios);
instantanea.forEach((datoInstantanea) => {
  this.usuarios.push({
    id: datoInstantanea.id,
    nombre: datoInstantanea.data().nombre,
  });
});

Y en este caso "usuarios" es el nombre de mi colección. Por cierto, bd es la referencia a la base de datos.

Eliminar documento por ID en Firestore

Ahora que ya tenemos la referencia al documento invocamos a deleteDoc pasándole el documento:

await deleteDoc(
  doc(bd, "usuarios", usuario.id)
);

Y así es como se va a eliminar de nuestra colección en Firebase usando Firestore Database, a filtrando por el id del documento.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *