我想从我的数据库使用AngularJS加载一些数据。 我有一个应该得到数据的服务和一个使用它的控制器。AngularJS服务不返回承诺
见下面我的代码:
angular.module('myApp')
.factory('panelService', ['$http', function ($http) {
return {
async: function() {
return $http.get('/test'); // this returns promise
}
};
}]);
angular.module('myApp')
.controller('panelCtrl', ['$scope', '$http', function ($scope, $http) {
var promise = panelService.async()
promise.then(
function(payload){
$scope.user = payload.data;
}
)
}]);
可惜,这是行不通的。没有数据被加载,我没有看到任何JSON对象到达浏览器。但是,如果我在我的控制器中将panelService.async()
替换为$http.get('/test')
,它可以正常工作。所以我的猜测是我的服务有错误或者没有正确调用。