首页 > 解决方案 > 用于快速 Firebase 分页的云功能

问题描述

我正在做react项目,并为我的数据库使用了 firestore,我只是被 firebase 分页卡住了,如何使用它的方法,如 startAt(),以及如何前进和后退以及如何按顺序进行 api 调用,

标签: reactjsfirebasegoogle-cloud-firestorepaginationgoogle-cloud-functions

解决方案


在 firebase 文档中查看此示例:

var first = db.collection("cities")
     .orderBy("population")
     .limit(25);

return first.get().then(function (documentSnapshots) {
  // Get the last visible document
  var lastVisible = documentSnapshots.docs[documentSnapshots.docs.length-1];
  console.log("last", lastVisible);

  // Construct a new query starting at this document,
  // get the next 25 cities.
  var next = db.collection("cities")
          .orderBy("population")
          .startAfter(lastVisible)
          .limit(25);
}); 

如果 nextPage 按钮触发,您可以将 lastVisible 元素保存在状态变量中并更新它。

对于这个用例,您不需要云功能。

有关更多信息,请参阅官方 firebase 文档:FirebaseDocs


推荐阅读