我一直试图从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);
})
我试图使用超时来查看数据是否进入较晚,但无论如何,我只是为空。
答案 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;
}
}
})