Firebase列表中的对象长度

时间:2018-04-18 11:43:07

标签: angular firebase firebase-realtime-database angularfire2

我有下一个Firebase数据库结构:

posts
    | 
    post
       |
       comments
              | comment 1
              | comment 2

这是一个帖子的集合,每个帖子都有一个评论集合。我想在帖子中输出评论数量:

<ng-container *ngIf="post$ | async; let post">
    {{ post.comments?.length }}
</ng-container>

但这不起作用。我做错了什么?

1 个答案:

答案 0 :(得分:3)

您确定您编写的是Firebase保存数据的方式吗? 它们不能将列表保存为数组,但它们通常会将它们转换为具有索引关键字的映射。

因此,您的post.comments可能不是数组而是地图。尝试使用尺寸而不是长度。 如果它不是地图而是对象(我对此不确定),则应使用Object.keys(post.comments).size代替。