【发布时间】:2021-10-03 00:44:19
【问题描述】:
我有一个分页的帖子列表,每次提取时都会重新计算我的光标,并将最后一个 QuerySnapshot 文档分配给它:
// Calculate the new startAfter
if (querySnapshot.size) {
startAfter = querySnapshot.docs[querySnapshot.docs.length - 1];
}
不知何故,使用文档快照作为光标是避免破坏分页的最“安全”的方法之一。
我正在考虑使用非规范化优化我的应用程序的某些部分。例如,由于我的应用程序的每个用户都可以上传无限的帖子,这些帖子显示在他们的个人资料上 10 x 10,因此将最后 10 个用户帖子(非规范化)添加到用户的文档(数组字段)可能是一个好主意。
这样,我避免了对每个访问过的个人资料进行前 10 个帖子获取。但是...如何分配第一个 startAfter 光标?我的意思是,是否可以在文档中写入文档快照或类似的东西以获得相同的行为?
【问题讨论】:
标签: javascript firebase google-cloud-firestore