Acceso

Agregar Documentos a Firebase Firestore en React.

toscadev

@ ToscaDevsJS


Firebase Firestore es una base de datos en tiempo real en la nube que facilita el almacenamiento y la sincronización de datos en aplicaciones web y móviles.

Utilizaremos una versión ligera de Firebase Firestore llamada "firebase/firestore/lite" y la librería "react-hot-toast" para mostrar notificaciones en la interfaz de usuario.


npm install react-hot-toast

npm install firebase

CÓDIGO COMPLETO

Este fragmento de código simplifica en gran medida la tarea de agregar documentos a Firestore en aplicaciones React, lo que puede ser de gran utilidad en tus proyectos.

addDataFirestore.ts

import { firestoreDb } from "@/context/firebase-config";
import { addDoc, collection } from "firebase/firestore/lite";
import toast from "react-hot-toast";

export async function addDataFirestore(
  collectionName: string, // nombre de la colección
  documentDataAdd: object // objeto con los datos del documento
) {
  try {
    const referenciaColeccion = collection(firestoreDb, collectionName);
    const docRef = await addDoc(referenciaColeccion, documentDataAdd);
    toast.success(`¡Documento creado con éxito!${docRef.id}`);
  } catch (error: any) {
    console.error("Error al añadir el documento: ", error);
    throw error;
  }
}


CÓDIGO ClIENTE

BtnAddProducts.tsx
"use client";
import toast, { Toaster } from "react-hot-toast";
import { addDataFirestore } from "@/firebase/addDataFirestore";

export const BtnAddProducts = () => {
  return (
    <>
      <Toaster />
      <button
        onClick={() =>
          addDataFirestore("Productos", {
            name: "Producto 1",
            description: "Descripción del producto 1",
            price: 10,
          })
        }
      >
        Añadir producto
      </button>
    </>
  );
};

NOTAS

-Manejo de Errores con try-catch:

Utilizamos un bloque try para ejecutar el código y manejar posibles errores, Si se produce un error durante el proceso, se captura en el bloque catch. Registramos el error en la consola y lo lanzamos nuevamente para su posterior manejo.

-Referencia a la Colección:

Creamos una referencia a la colección específica en Firestore que deseamos actualizar utilizando la función collection. Tomamos la base de datos de Firestore (firestoreDb) y el nombre de la colección como argumentos.

Agregar el Documento addDoc: Usamos addDoc para agregar un nuevo documento a la colección. La referencia a la colección y los datos del documento se pasan como argumentos. El resultado, docRef, contiene información sobre el documento recién creado.


Regresar al Blog.

© Copyright 2024 ToscaDevJS.