Получение моих данных из FireBase 3

Я пытался получить свои данные из 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 ответ

Вы можете попробовать сервис $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;
      }
    }
})
Другие вопросы по тегам