AngularFire - 为firebaseArray ng-repeat中的每个项获取一个firebaseObject

时间:2017-04-08 21:53:30

标签: angularjs firebase firebase-realtime-database angularfire

我有一个连接到firebaseArray的ng-repeat,它是用户的doc Ids的索引。 我想显示他们的文档列表,其中包含每个文档的附加信息,例如它的标题和描述。

我的火力架结构是:

+users
  - userId1
    -theirDocs
         -docId1: true
         -docId2: true

+docs
  -docId1
      - tile
      - description
      - url
   -docId2
     - etc etc

我已经尝试了所有内容但仍无法使其正常工作,这似乎是一个非常常见的用例。我曾尝试使用每次调用firebaseObject的函数。我尝试过使用单独的控制器。我已经尝试了一个指令,我甚至尝试过使用firebase.utils库(我认为现在已经过时了)。

有人能推荐使用AngularFire的最佳方法吗?提前谢谢!

1 个答案:

答案 0 :(得分:0)

最好先看一段代码片段,以便完全了解您首先尝试过的内容,因为很难确定问题所在。话虽如此,只要你的规则没有阻止这一点,你可能需要等待数据下载使用$ loaded函数。

示例

此示例显然可以通过以下link获得,但这里有一个示例以进一步明确:

var yourFirebaseReference = firebase.database().ref("REPLACE WITH YOUR FIREBASE BRANCH HERE");
var data = $firebaseArray(yourFirebaseReference);
data.$loaded().then(function(x) {
    console.log(data) // Example, you can do what you want with your 'data' now as the data has loaded
    x === data; // true
}).catch(function(error) {
    console.log("Error:", error);
});