【发布时间】:2020-11-04 12:11:00
【问题描述】:
我有一个标签列表,我想在其中搜索并检索与搜索匹配的数据。
我可以使用此查询正确检索所有数据
searchTags(search: string): AngularFirestoreCollection<Tag> {
return this.afs.collection(this.dbPathTags, ref => ref.where('tag', "<=", search))
}
但问题是我想将结果限制为 5,因为我打算在下拉/自动完成中显示它们(如 SO 中的标签)
添加限制后,查询只是从 db 中搜索前 5 个项目,如果它们匹配,则只返回其中任何一个。想要的结果是查询过滤所有项目然后返回 5 个项目
searchTags(search: string): AngularFirestoreCollection<Tag> {
return this.afs.collection(this.dbPathTags, ref => ref.where('tag', "<=", search).limit(5))
}
当搜索“a”时,我得到了这个结果
但是当搜索“m”或“math”时我什么都没有,注意“math”也在数据库中,并且在限制关闭时显示
限制关闭
【问题讨论】:
标签: javascript angular firebase google-cloud-firestore angularfire