gpt4 book ai didi

javascript - firebase + angularjs顺序

转载 作者:行者123 更新时间:2023-12-03 09:42:43 24 4
gpt4 key购买 nike

我想按照我来自 firebase 的日期进行排序/排序。它不以传统方式工作 Angular 排序是如何处理的 ng-repeat ... | orderBy:'<value>' ,因为 firebase 返回一个对象,而 Angular 只能对数组进行排序。

app.service('ContestantsService', function ($firebaseArray, FIREBASE_URI) {
var service = this;
var ref = new Firebase(FIREBASE_URI);
var contestants = $firebaseArray(ref);

service.getContestants = function () {
return contestants; // <= this one i want to sort bis the 'score'
};

不知怎的,我无法使用 .orderBy通过 AngularFire API。有没有办法以排序的方式获取数据?

更新:

我添加了以下内容:

...
contestants.sort(compare);
function compare(a, b) {
return a.score < b.score;
};
...

但它不起作用,也许它是通过回调获取数据?

最佳答案

According to AngularFire docs , firebaseArray 是一个常规数组。你可以像常规数组一样做所有你能做的事情。然而,他们确实说过:

While using read attributes and methods like length and toString() will work great on this array, you should avoid directly manipulating the array. Methods like splice(), push(), pop(), shift(), unshift(), and reverse() will cause the local data to become out of sync with the server.

您可能想在 Controller 中创建一个函数来获取该数组,对其进行复制和排序,因为排序只是 UI 逻辑,与数据的底层结构无关。

关于javascript - firebase + angularjs顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31138797/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com