从firebase 3中检索我的数据

时间:2016-06-11 06:10:15

标签: angularjs firebase angularfire

我一直试图从firebase 3获取我的数据,并想知道是否有人知道我正在制作的错误。

服务:

.service("searchService", function($firebaseArray, fb) {

    var database = firebase.database();
    var bookId = firebase.auth().currentUser;

    this.getPostedBooks = function() {
      return database.ref("postedBooks/" + bookId).once("value");
    }

控制器:

$scope.getPostedBooks = function() {
      searchService.getPostedBooks().then(function(response) {
        $timeout(function() {
          console.log(response.val())
        }, 5000);

        })

我试图使用超时来查看数据是否进入较晚,但无论如何,我只是为空。

1 个答案:

答案 0 :(得分:0)

你可以试试$ q服务

https://docs.angularjs.org/api/ng/service/ $ Q

.service("searchService", function($firebaseArray, $q, fb) {
    var database = firebase.database();
    var bookId = firebase.auth().currentUser;
    var dfd = $q.defer();

    return {
       getPostedBooks :  function() {
      return database.ref("postedBooks/" + bookId).once("value", function(snapshot) {
          dfd.resolve(snapshot.val());
        }, function (errorObject) {
          //log error
        });
        return dfd.promise;
      }
    }
})