使用 startAfter 检索数据时从 firestore 得到相同的响应

问题描述 投票:0回答:1
if (startAfterDoc) {
  q = query(collection(db, 'listings'), orderBy("id","desc"), startAfter(startAfterDoc), limit(4));
  console.log(q)
} else {
  q = query(collection(db, 'listings'), orderBy("id","desc"), limit(3));
}

对于

startAfterDoc
,我使用整个文档作为输入。

未定义

startafterdoc
时的图像:

enter image description here

定义

startafterdoc
时的图像:

enter image description here

javascript reactjs firebase google-cloud-firestore
1个回答
0
投票

找到解决方案了 我在startAfter中传递了整个文档,但后来我意识到我是按id排序的。当我传递文档 ID 时,它工作得很好

 if (startAfterDoc) {
          q = query(collection(db, 'listings'), orderBy("id","desc"), startAfter(startAfterDoc.id), limit(4));
        } else {
          q = query(collection(db, 'listings'), orderBy("id","desc"), limit(3));
        }

© www.soinside.com 2019 - 2024. All rights reserved.