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

AngularFire - Get a firebaseObject for each item in a firebaseArray ng-repeat

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

我的 firebase 结构是:

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

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

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

任何人都可以推荐使用 AngularFire 执行此操作的最佳方法吗?提前致谢!

最好先看一段代码,以充分了解您的尝试,因为很难确定问题出在哪里。也就是说,只要您的规则不阻止这种情况,您可能需要事先使用 $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);
});