首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于angularFire 2的防火墙收集计数

基于angularFire 2的防火墙收集计数
EN

Stack Overflow用户
提问于 2017-11-19 16:05:17
回答 3查看 6.2K关注 0票数 4

我想知道在消防局中存在的文件的总数。我不想只获取数据--我有200.000项的内部产品收集的总数--用角4-5,而不是angular.js --是可能的

有人能告诉我我如何做到这一点吗?

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

代码语言:javascript
复制
  get_total_messages() {
    this.messages_collection = this.afs.collection<MessageEntity>('messages');
    return this.messages_collection.snapshotChanges();
  }

最后,这是我试图得到的数据,但不是我想要的;

代码语言:javascript
复制
this.firebase_Service.get_total_messages().subscribe( data => {
   console.log(data);
});
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-11-19 16:12:42

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

  1. 把所有的文件都清点到客户端。
  2. 将计数存储为单独的属性,并在添加/删除文档时更新该属性。

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

Firebase提供了一个使用云函数保持计数器的示例。虽然此示例是为Firebase实时数据库编写的,但它也可以很容易地修改以在上工作。

Firestore还提供了关于运行聚合查询运行分布式计数器的文档。不过,这两种方法似乎都比我所链接的第一个示例稍微复杂一些。

票数 11
EN

Stack Overflow用户

发布于 2017-12-05 07:54:32

);//现在,您可以获得消息的总数。

票数 0
EN

Stack Overflow用户

发布于 2020-04-08 16:57:32

幸运的是,我已经以某种方式解决了使用该代码的问题,尝试一下这个,它运行得很好。

代码语言:javascript
复制
this.db.collection('User').valueChanges()
.subscribe( result => {
console.log(result.length);
})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47378910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档