角度服务在控制器中调用时抛出错误
问题描述:
我正在尝试学习角度。我写下了一段代码,但这是抛出错误,因为service.getImages不是一个函数。请帮我弄清楚我在这里错过了什么。角度服务在控制器中调用时抛出错误
服务:
services.service('interiors', function($http){
return{
getImages : function(){
return $http.get("imageListSpace/living?from=300000&to=200000&page=1");
}
}
});
控制器:
otCtrls.controller('ImageListController', [ '$scope', '$routeParams', 'interiors', function($scope, $routeParams, interiors) {
$scope.imageList = {};
interiors.getImageList().success(function(data) {
$scope.imageList = data;
});
} ]);
查看:
<li ng-repeat="image in imageList | filter:query">
<div id="imageContainer" >
<img src="{{image.path_small}}" />
<div id="imageText">
<p>{{image.description_short}}</p>
</div>
</div>
<div id="priceText">
<div class="col-xs-6">
<span>Starting from </span><span>Rs {{image.price}}</span>
</div>
<div class="col-xs-6"></div>
</div>
</li>
请帮我找出我是缺少在这里。
答
你的控制器和服务具有同样的功能或者不同的名称更改为您服务,是
return{
getImageList : function(){
return $http.get("imageListSpace/living?from=300000&to=200000&page=1");
}
}
或控制器调用
interiors.getImages().success(function(data) {
$scope.imageList = data;
});
你从你的控制器,但你的服务调用getImageList函数被称为getImages – Rob
此外,$ scope.imageList应该是一个数组,而不是一个对象。 – Rob