Получение моих данных из 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;
}
}
})