Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

129
Visualizações
Firebase: mejores prácticas para mostrar elementos

Quisiera una sugerencia. Estoy desarrollando una aplicación web usando react-js como frontend y firebase como backend.

En aras de la simplicidad, digamos que el objetivo de la aplicación web es permitir que el usuario cargue algunos elementos que luego se muestran en la página de inicio.

Un elemento consta de dos cadenas: 1) nombre del elemento 2) URL que apunta a una imagen almacenada en IPFS

Una vez que el usuario envía un formulario, la interfaz crea un nuevo documento en una colección en firestore:

 await addDoc(collectionRef, newDoc)

Luego, en la página de inicio, muestro todos los elementos de la colección.

 const querySnapshot = await getDocs(collectionRef); querySnapshot.forEach((doc) => { ... });

Esto funciona; sin embargo, si lo he entendido correctamente, cada vez que se actualiza la página de inicio, la interfaz hace N llamadas de lectura (donde N es la cantidad de documentos en la colección). Por lo tanto, me pregunto si es el enfoque correcto, ¿hay una mejor manera?

Realmente aprecio cualquier sugerencia (también con respecto a posibles fallas de seguridad importantes en esta configuración)

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Cada vez que se actualiza la página de inicio, la interfaz realiza N llamadas de lectura (donde N es la cantidad de documentos en la colección).

Con const querySnapshot = await getDocs(collectionRef); De hecho, este es el caso: se obtienen todos los documentos de la colección .

Si su colección contiene una gran cantidad de documentos y se recupera con frecuencia, esto le costará dinero y, en un momento, el rendimiento de su aplicación puede verse degradado (duración de la ejecución de la consulta de Firestore y muchos documentos transferidos desde el back-end al Interfaz).

Un enfoque para evitar eso es usar la paginación y obtener solo los primeros X documentos y mostrar un enlace para obtener los X siguientes, etc.

Hay una página en la documentación de Firestore dedicada a la implementación de la paginación.


También podría implementar un mecanismo de desplazamiento infinito en lugar de un enlace, para cargar el siguiente conjunto de documentos X continuamente a medida que el usuario se desplaza hacia abajo en la página. Esa es solo una variación de la interfaz de usuario y se basa exactamente en el mismo enfoque detallado en la documentación de Firestore.


También con respecto a posibles fallas de seguridad importantes en esta configuración

Obtener todos los documentos de una colección o usar la paginación no hace ninguna diferencia en términos de seguridad. En cualquier caso, debe implementar la seguridad de acuerdo con sus requisitos mediante el uso de reglas de seguridad (y potencialmente también Firebase Auth ). Y no olvide que las reglas de seguridad no son filtros .

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda