gpt4 book ai didi

angularFire 2 的 Firebase Firestore 集合计数

转载 作者:行者123 更新时间:2023-12-01 09:14:54 26 4
gpt4 key购买 nike

我想获取 firestore 中存在的文档总数。
我不想只获取内部产品集合的总数我有 200.000 项目是可能的 Angular 4-5,而不是 angular.js

有人可以告诉我如何实现这一目标吗?

到目前为止,我的代码不起作用

  get_total_messages() {
this.messages_collection = this.afs.collection<MessageEntity>('messages');
return this.messages_collection.snapshotChanges();
}

这就是我尝试获取数据的方式,但这不是我想要的;
this.firebase_Service.get_total_messages().subscribe( data => {
console.log(data);
});

最佳答案

没有 API 可以获取 Firestore 集合中文档数量的计数。这意味着获得计数的唯一方法是:

  • 获取所有文档并在客户端对其进行计数。
  • 将计数存储为单独的属性,并在添加/删除文档时更新它。

  • 这两种方法在 NoSQL 数据库中都很常见,当然,随着文档数量的增加,第二种方法效率更高。

    Firebase 提供了一个 sample of using Cloud Functions to keep a counter 。虽然此示例是为 Firebase 实时数据库编写的,但也可以轻松修改以在 Cloud Firestore 上运行。

    Firestore 还提供有关 running aggregation queriesrunning distributed counters 的文档。两者似乎都比我链接的第一个样本稍微复杂一些。

    关于angularFire 2 的 Firebase Firestore 集合计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47378910/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com