如何在Firestore中通过查询从索引到其他索引获取大量文档

Dua*_*nnx 8 firebase angular google-cloud-firestore

我想对存储在云中的数据进行分页Firestore.它看起来像这样:

在此输入图像描述

注意,它与加载更多或无限加载不同.让我们假设,当用户点击寻呼机3时,我需要向我发出请求,Firestore从50到75位获得25个项目(每页25个项目).

我应该这样做:

db.collection("cities")
    .orderBy("population")
      .startAfter(lastVisible)
        .limit(25);
Run Code Online (Sandbox Code Playgroud)

这里的问题是我没有lastVisible.我知道我们可以获得lastVisible前50项,但它是如此愚蠢,因为如果我喜欢这样,为什么我不只是得到前75项并过滤我们想要的客户端.

问题是:如何通过查询从索引到其他索引获取多个项目Firestore

任何帮助,将不胜感激!非常感谢!

Abd*_*sae 5

更新的答案:

您可以维护一个大小数组作为页面的决定数量.每个索引的startAt值将表示您的cities字段的字段值.

此外,您还将保留文件的计数.这将帮助您给出限制值(count / numberOfPages).

您将与云功能触发器的帮助下维持这两个,如前所述这里.