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

264
Visualizações
Firestore: obtenga el cursor de paginación de los datos desnormalizados

Tengo una lista paginada de publicaciones, donde mi cursor se vuelve a calcular en cada búsqueda, asignándole el último documento QuerySnapshot:

 // Calculate the new startAfter if (querySnapshot.size) { startAfter = querySnapshot.docs[querySnapshot.docs.length - 1]; }

De alguna manera, usar instantáneas de documentos como cursores es una de las formas más "seguras" de evitar romper las paginaciones.

Estoy pensando en optimizar algunas partes de mi aplicación con desnormalizaciones. Por ejemplo, como cada usuario de mi aplicación puede cargar infinitas publicaciones que se muestran en sus perfiles de 10 en 10, sería una buena idea agregar las últimas 10 publicaciones de usuarios (desnormalización) al documento del usuario (un campo de matriz).

Con esto, evito hacer la búsqueda de las primeras 10 publicaciones de cada perfil visitado. Pero... ¿cómo asigno el primer cursor startAfter? Quiero decir, ¿es posible escribir una instantánea de documento en un documento o algo así para obtener el mismo comportamiento?

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

0

Si observa la documentación de startAfter , verá que hay dos sobrecargas:

startAfter ( snapshot : DocumentSnapshot < any > ) : Query < T >

Crea y devuelve una nueva Query que comienza después del documento proporcionado (exclusivo). La posición inicial es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en orderBy de esta consulta.

Parámetros

snapshot : DocumentSnapshot<any>

La instantánea del documento para comenzar después.

Y

startAfter ( ... fieldValues : any [] ) : Query < T >

Crea y devuelve una nueva Query que comienza después de los campos proporcionados en relación con el orden de la consulta. El orden de los valores de campo debe coincidir con el orden de las cláusulas order by de la consulta.

Parámetros

Rest ...fieldValues: any[]

Los valores de campo para iniciar esta consulta después, en el orden de la consulta.

Como no tiene una DocumentSnapshot , puede usar la segunda sobrecarga y pasar los valores de campo relevantes.

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