Javascript Firestore“startAt”不断带来相同的数据
我正在用firestore进行分页,问题是即使我更改了startAt,它仍然会带来相同的结果 我的问题的一个例子Javascript Firestore“startAt”不断带来相同的数据,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,我正在用firestore进行分页,问题是即使我更改了startAt,它仍然会带来相同的结果 我的问题的一个例子 分页API的工作方式与您期望的不同。它不接受整数偏移量。从链接的API文档中可以看到,它需要: 要从开始的文档的文档引用 与查询顺序相关的字段值数组通常也取自文档 分页API根本不适用于偏移量。您不能一次跳过N个文档。您需要做的是读取N个文档,然后读取接下来的N个文档,依此类推。我建议阅读下面的例子。请注意,第一个示例并不是要求偏移量为1000000,而是要求从人口字段值等于或大于1
分页API的工作方式与您期望的不同。它不接受整数偏移量。从链接的API文档中可以看到,它需要: 要从开始的文档的文档引用 与查询顺序相关的字段值数组通常也取自文档 分页API根本不适用于偏移量。您不能一次跳过N个文档。您需要做的是读取N个文档,然后读取接下来的N个文档,依此类推。我建议阅读下面的例子。请注意,第一个示例并不是要求偏移量为1000000,而是要求从人口字段值等于或大于1000000的城市开始
const snaps = await db.collection('blogs').
.orderBy('createdAt')
.startAt(0)
.limit(5).get();
const snaps2 = await db.collection('blogs').
.orderBy('createdAt')
.startAt(5)
.limit(5).get();
let billList = []
let billList2 = []
snaps.forEach(x => billList.push(x.data()) )
snaps2.forEach(x => billList.push(x.data()) )
console.log(billList)
console.log(billList2)