我的 AngularJS 应用程序有问题。我定义了一些工厂,它们被注入到一些控制器中(在需要的地方)。我的问题是这些工厂在我第一次启动应用程序时被初始化。
导致问题的服务之一:
PlanningPoker.factory('PokerTable', function ($http) {
var baseURL = "/api/pokertable/";
return {
list: function list(playerId) {
return $http.get(baseURL, {params: {playerid : playerId}});
},
save: function save(pokertable) {
return $http.post(baseURL, pokertable, {});
}
};
});
该服务在控制器中的使用方式如下:
PlanningPoker.controller('PokerTableListController', function ($rootScope, $scope, $route, PokerTable, SocketEvent) {
PokerTable.list($rootScope.playerId).
success(function (data, status, headers, config) {
$scope.pokertables = data;
});
});
此外,当我从控制器回调中删除 PokerTable 服务时,该服务会被调用。我通过在服务中添加一个 console.log 来尝试这个,无论该服务是否在任何控制器中使用,它都会被调用。
有什么想法吗?我认为只有在需要服务时才会延迟加载服务?
问候马克