Firebase搜索参数



所以我刚开始使用Firebase和AngularFire。我有这样的数据结构:

friends
 -JzKr-mrv-O7rlxrMi3_
     creator: "111181498675628551375"
     description: "dsa"
     name: "das"
 --JzKrahnTf47MXp8nAZx
     creator: "111181498675628551320"
     description: "ddasdassa"
     name: "dasdadsadas"

现在我想用参数创建者= "111181498675628551320"来查询。我该怎么做呢?我试过了:

 .service('Friends', function ($firebase, store, $state) {
    var friendsRef = new Firebase("url/friends");
    friendsRef.authWithCustomToken(store.get('firebaseToken'), function (error, auth) {
        if (error) {
            // There was an error logging in, redirect the user to login page
            $state.go('login');
        }
    });
    var friendsSync = $firebase(friendsRef);
    var friends = friendsSync.$asArray();
    this.all = function () {
        return friends;
    };
    this.getCreator = function(creator){
        return friends.$getRecord(creator);
    };
});

有没有人得到一些开发参考,我应该如何使用它?也许我应该打别的电话,而不是url/friends?

AngularFire是Firebase JavaScript SDK的包装器,它简化了将Firebase数据绑定到AngularJS视图的过程。如果在AngularFire文档中有不明显的地方,请参考Firebase JavaScript文档。

您可以在文档中阅读有关Firebase查询的所有内容。在这种情况下,您需要做的是使用Firebase的常规JavaScript SDK构建必要的查询:

var ref = new Firebase('https://yours.firebaseio.com/friends');
var query = ref.orderByChild('creator').equalTo('111181498675628551320');

然后你可以使用AngularFire $firebaseArray():

将结果项绑定到你的视图。
$scope.friends = $firebaseArray(query);

最新更新