仅从 firebase 检索父元素:Angularfire

Retrieving only the parent elements from firebase : Angularfire

该图显示了我的数据库的结构。 我想打印 1、2 ...(依此类推),即仅打印父元素名称。但不明白该怎么做。

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.

shallow=true

如果您使用的是 REST API,请将此添加到请求的末尾 url。像这样

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