仅从firebase中检索父元素:Angularfire

时间:2015-11-30 08:11:46

标签: javascript angularjs firebase angularfire

enter image description here

图像显示了我的数据库的结构。 我想打印1,2 ...(等等),即单独的父元素名称。但无法理解如何做到这一点。

2 个答案:

答案 0 :(得分:3)

Firebase数据库本质上是一个JSON对象。

此对象采用树形结构。如果您从树中的某个位置读取,则会在其下方获取每个数据。

看看这个示例数据库。

{
  "items": {
    "1": {
      "title": "Hi"
    },
    "2": {
      "title": "Bye"
    }
  }
}

JavaScript SDK或AngularFire无法在" items"下读取1和2的父键。

如果您只想阅读父密钥,您需要在Firebase数据库中为他们创建索引

{
  "items": {
    "1": {
      "title": "Hi"
    },
    "2": {
      "title": "Bye"
    }
  },
  "itemKeys": {
    "1": "Hi",
    "2": "Bye"
  }
}

现在,您可以在itemKeys位置创建引用,并将其传递给$firebaseArray()$firebaseObject()

var ref = new Firebase('<my-firebase-app>.firebaseio.com/itemKeys');
var syncArray = $firebaseArray(ref);

If you're concerned with keeping two separate data structures consistent, check out the client-side fan-out feature.

答案 1 :(得分:0)

shallow=true

如果您使用REST API,请将此添加到请求URL的末尾。喜欢这个

https://docs-examples.firebaseio.com/rest/retrieving-data.json?shallow=true