angularJS将异步数据绑定到ng-repeat order

angularJS bind async data to ng-repeat orderBy

本文关键字:ng-repeat order 数据绑定 异步 angularJS      更新时间:2023-09-26

对不起,如果我把术语搞错了。

我试图有一个列表的电影与日期显示在一个列表中,可以通过任何属性订购。当使用本地JSON文件和$http时,我可以这样做,但一旦我移动到异步实现,绑定就会失败。

下面是一个例子:http://jsbin.com/nelora/3/edit

orderByPriority过滤器是由AngularFire提供的,用来把$firebase返回的对象转换成一个数组。数组中的对象按优先级排序(在Firebase中定义)。此外,数组中的每个对象都有一个定义在其上的$id属性,它将对应于该对象的键名。

这里的关键是它将其转换为数组-然后您可以通过自己的过滤器对其进行排序,因为Firebase返回对象,而不是数组。

<li ng-repeat="movie in movies | orderByPriority | orderBy:orderProp">
      {{movie.year}}—{{movie.title}}
 </li>

https://www.firebase.com/docs/angular/reference.html orderbypriority