我使用angularFire
隐式数据同步来自Firebase的对象列表,我想使用ng-repeat
呈现其唯一ID(用于网址)以及其他数据属性。我是否可以angularFire
以ng-repeat
访问对象ID的方式返回,就像angularFireCollection
的成员拥有$id
属性一样?如果没有,那么实现这一目标的正确方法是什么?假设代码(不起作用):
控制器:
myApp.controller('ItemListCtrl', ['$scope', 'angularFire',
function ItemListCtrl($scope, angularFire) {
var ref = new Firebase(firebaseUrl);
angularFire(ref, $scope, 'items');
}
]);
查看:
<div ng-repeat="item in items" >
<a href="" ng-href="#/items/{{item.name()}}">{{item.text}}</a>
</div>
答案 0 :(得分:24)
我认为你所需要的只是:
<div ng-repeat="(name, item) in items">
<a href="" ng-href="#/items/{{name}}">{{item.text}}</a>
</div>
anglularFire对象的行为就像普通的javascript对象一样。
答案 1 :(得分:7)
要获取通过angularfire $ add方法创建的唯一ID,您可以使用$ id属性:
<div ng-repeat="item in items" >
<a href="" ng-href="#/items/{{item.$id}}">{{item.text}}</a>
</div>