我有這樣的服務:angularjs服務工作不正常
angular.module('autotestApp').factory('GroupService', ['$http', function ($http) {
var groups = [];
return{
list: function() {
return groups;
},
retrieve: function() {
$http({
method: "get",
url: "/enterprises/_groups"
}).success(function (response) {
groups = response;
}).error(function() {
console.log("failed")
});
}
}
}]);
,這是我的控制器:
angular.module('autotestApp').controller('GroupsController', function($scope, $http, GroupService) {
GroupService.retrieve();
$scope.items = GroupService.list();
});
所以,在我的控制,我第一次收到來自API的結果使變量組(在服務中)被分配,然後我使用list()方法將值賦給$ scope.items。
我確定API正在返回結果。但是
groups = response
部件無法正常工作。當我把它改成
groups.push(response)
這是工作,但結果是一個列表內的列表,這是我想dont't:[對象,對象,對象]
我想這一點:[對象,對象,對象]
如何解決這個問題?
這是工作:)但我需要該組變量分配給response.data,以便我可以在另一個控制器中使用它。但是,我沒有提到在我的問題中,你的回答是正確的,所以我會接受它。 – Rodrigue 2014-12-09 13:33:00
我編輯答案以添加響應的緩存,以便您可以在不同控制器中使用結果,但它只會發出單個請求。 – Rytmis 2014-12-09 19:32:40