我可以将呼叫链接到Angular Fire吗?

时间:2014-12-07 03:49:34

标签: angularjs angularfire

在我的服务中,我使用角火来调用firebase:

filter : function(limit){
    return $firebase(ref.child('stats').limit(limit)).$asArray();
},

这很好但是如果我尝试添加orderByChild:

filter : function(limit){
    return $firebase(ref.child('stats').limit(limit).orderByChild('host')).$asArray();
},

我收到错误:TypeError:undefined不是函数

如何将这些调用链接在一起,以便我可以限制结果和按主机排序?

1 个答案:

答案 0 :(得分:0)

看起来有两个问题:

  1. .limit()已弃用。查看https://www.firebase.com/docs/web/api/query/limit.html了解详情。

  2. 虽然从技术上来说,你所做的事情应该有效(文档说.limit().orderByChild()都会返回一个新的Query对象),我有一种感觉这是一个排序问题,.limit()可能会返回一些无法访问新(呃)方法的内容(如.orderByChild())。

  3. 我尝试将您的代码段更改为:

    filter: function(limit) {
        var query = ref.child('stats').orderByChild('host').limitToFirst(limit);
        return $firebase(query).$asArray();
    },