firebase - Firestore 按行号获取一系列文档
问题描述
我在firestore上有这个非常大的集合,我希望能够在按参数排序后获得一系列文档,例如:
1 doc1
2 doc2
3 doc3
4 doc4
5 doc5
...
我想做一个这样的服务功能getRangeOfDocuments(start: number, end: number)
来getRangeOfDocuments(2, 4)
获取文件[doc2, doc3, doc4]
。
startAt
and运算符将endAt
文档作为参数,这意味着要获得以前的结果,我应该有doc2
and doc4
: ref.startAt(doc2).endAt(doc4)
。
limit
操作员可以使它适用于我想获得从 开始的范围的情况doc1
。
如何获得不doc1
使用行号而不是文档开始的范围?
解决方案
Firestore 无法通过结果集中的某些索引来抵消查询。您需要提供一个文档或值以从结果集中的某个点继续查询,如分页文档中所述。(想想结果的索引如何随着时间的推移而变化,因为新数据可能会影响查询的结果,你会发现对结果进行数字索引会产生不好的结果。)
推荐阅读
- ios - 如何转换 UITextField 中的数字并将其传递给 UITableViewCell 中的 UILabel?
- java - 如何在 mongodb Spring Boot 中持久化嵌套文档?
- node.js - 登录表单未正确发布
- javascript - Greasemonkey - 集成滚动和鼠标点击动作
- python - django.core 序列化器和 Django Rest Framework 序列化器之间的区别
- javascript - 如何在给定时区的情况下将时间转换为 UTC?
- c# - 访问时填充数据集表
- java - 我正在尝试在播放声音时显示暂停图标,然后在声音播放完毕时显示播放图标
- vb.net - 如何克服“数组范围外的索引”?
- c# - 如何从命令行使用 msbuild 编译我的 c# 解决方案