gpt4 book ai didi

javascript - 如何结合 Firestore orderBy desc 和 startAfter 游标

转载 作者:数据小太阳 更新时间:2023-10-29 05:11:32 25 4
gpt4 key购买 nike

我正在尝试查询 firestore 中的列表,该列表应按降序日期属性排序,并使用 startAfter 游标对结果进行分页。

正如您在下面的代码片段中所看到的,一旦我将 orderBy('date', 'desc') 与 startAfter(lastDoc.date) 结合使用,这就会失败。

我想知道我做错了什么。有什么想法吗?

// this actually works
// but it is sorted by ascending dates
db.collection('tanks')
.doc(tankId)
.collection('documentations')
.orderBy('date')
.startAfter(lastDoc.date)
.limit(pageSize)
.get()

// this even works...
// but has no cursor (startAfter) set for pagination
db.collection('tanks')
.doc(tankId)
.collection('documentations')
.orderBy('date', 'desc')
.limit(pageSize)
.get()

// this is what i need
// but it returns always zero results
db.collection('tanks')
.doc(tankId)
.collection('documentations')
.orderBy('date', 'desc')
.startAfter(lastDoc.date)
.limit(pageSize)
.get()

最佳答案

您需要将实际文档快照传递给 startAfter,而不是日期值:

db.collection('tanks')
.doc(tankId)
.collection('documentations')
.orderBy('date', 'desc')
.startAfter(lastDoc)
.limit(pageSize)
.get()

参见 reference documentation for startAfter() .

关于javascript - 如何结合 Firestore orderBy desc 和 startAfter 游标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48097696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com