我是Firebase和Ionic的新手,目前正在尝试从加载某个视图时从服务器获取一些数据。现在我能够获取服务中的数据,但是我无法将获取的data
作为对控制器的承诺返回。这是调用服务的代码:
$scope.$on('$ionicView.beforeEnter', function () {
var user = firebase.auth().currentUser;
fireBaseService.getDataFromDB(user.uid).then(function(res){
console.log(res);
});
以下是调用Firebase API的服务:
this.getDataFromDB = function(uid){
return firebase.database().ref('table/' + uid).on('value', function(snapshot) {
var data = snapshot.val(); //data is available here
return data;
});
}
这是我得到的错误:
TypeError: fireBaseService.getExpensesFromDB(...).then is not a function
答案 0 :(得分:0)
call from controller
fireBaseService.getDataFromDB(user.uid, function(res) {
console.log(res);
}
service call
getDataFromDB = function(uid, callback){
return firebase.database().ref('table/' + uid).on('value', function(snapshot) {
var data = snapshot.val(); //data is available here
callback(data);
});
}