Firebase Firestore 使用带有内置查询的外部服务进行全文搜索

Firebase Firestore tie full-text search using external services with built in queries

所以,我知道为了对 Firestore 数据进行全文查询,您必须使用外部服务,例如 Algolia 和 Elasticsearch,这很好。但我的问题是我不知道如何将它们与 Firestore 的现有查询工具结合起来,例如 "where"、"limit" 和 "startAfter".

基本上,我有一个页面,您可以在其中查看 10 篇最新帖子,然后通过按下按钮并传递最后一个元素的值来加载另外 10 篇帖子,直到到达结尾。喜欢本教程 >link< 但没有虚拟滚动。

query.where('active', '==', true).orderBy('createdAt').startAfter(offset).limit(10);

所有这一切都很好,但是通过使用外部服务进行额外的全文搜索,我有两个不同的查询,彼此不了解,这违背了 Firestore 提供分页的目的。

我是不是遗漏了什么或者已经有人处理过这个问题了?

简短的回答是:你不能。 Firestore 查询只能考虑 Firestore 文档中的数据,除此之外别无他物。

如果数据被镜像到另一个数据库,则必须单独查询该数据库。如果需要,执行查询的代码可以合并多个查询的结果。