在正确排序时从firebase检索数据

时间:2017-02-03 14:05:11

标签: angularjs firebase firebase-realtime-database angularfire

我的firebase数据库中有这个结构

"metadata" : {
    "2017" : {
      "Februari" : {
        "-Kc3BF0V1iLgtnI65LuR" : {
          "date" : "2017-02-03T13:36:38.311Z",
          "price" : 90
        },
        "-Kc3BF0V1xxfrtnI65OlS" : {
          "date" : "2017-02-03T13:36:38.311Z",
          "price" : 90
        }
      },
      "Januari" : {
        "-Kc3E5bpxpo3RpSHH3fn" : {
          "date" : "2017-01-11T13:50:12.264Z",
          "price" : 45
        }
      }
    }
  }

我想在我的应用中实现的目的是显示一个像这样的列表

> Januari
>   - 45 (=price)
> 
> Februari
>   - 90 ()
>   - 240

事情是我能够显示月份,但由于firebase创建的唯一ID,我无法联系到孩子们。

这是我从firebase获取的对象

e{
    $$conf: Object
    $id: "2017"
    $priority: null
    Februari: Object
        -Kc3BF0V1iLgtnI65LuR: Object
        date: "2017-02-03T13:36:38.311Z"
        price: 90
    Januari: Object
        -Kc3E5bpxpo3RpSHH3fn: Object
        date: "2017-01-11T13:50:12.264Z"
        price: 45
}

我该如何处理?

1 个答案:

答案 0 :(得分:1)

您是否尝试使用ng-repeat?这样的事情会对你有用:

<div ng-repeat="(name, month) in months">
    {{ name }}
    <div ng-repeat="entry in month">
        {{ entry.price }}
    </div>
</div>

月份是database.ref().child('metaData').child('2017');

的结果