我使用以下代码从firebase获取一个对象:
var ref = firebase.database().ref().child("categories");
ref.orderByChild("status")
.equalTo('featured')
.on('value', function(snap) {
console.log('Categories in range', snap.val());
$scope.categories = snap.val();
})
我得到的对象包含几个对象,其数据看起来像我的例子:
我在模板视图中使用ng-repeat的结果。
<ul class="list">
<li ng-repeat="(category_id, category) in categories | toArray | orderBy:'position'">
<div style="background-image: url({{category.images[0].src}});" ng-click="category_action(category_id)">{{category.name}}
</div>
</li>
我现在的问题是我想用ng-click返回原始对象名称。我尝试使用角度为ng-repeat的(键,值)解决方案,但我没有得到原始对象名称,只有一个索引号,如0,1,2,3等。
我需要的是原始名称,例如 KU8JfAZRCsPJy9uOMqm 。 如果我只得到索引号(0,1,2),我怎么能在我的控制器中知道这个对象名称原来是什么?例如$ scope.categories。???
提前感谢您的帮助,我做了研究,但发现只有相同问题但没有工作解决方案的人。
PS:我使用firebase 3.x和angular 1.x