是的,您将需要使用一个Promise接口。因此,与其直接返回一个团队对象,不如直接返回一个promise:
承诺资源:
- http://egghead.io/lessons/angularjs-promises
- http://docs.angularjs.org/api/ng.$q
在服务中:
leagueManager.service("teamsService", function($http){ var deferred = $q.defer(); $http.get('data/teams.json').then(function(data) { deferred.resolve(data); }); this.getTeams = function(){ return deferred.promise; };});然后在控制器中:
$scope.team = {};var promise = teamsService.getTeams();promise.then(function(data) { $scope.teams = data;});


