我想从url获取json数据并将其分配给变量。我使用的服务看起来像这样
app.service('dataService', function($http) {
this.getdata = function(callbackFunc) {
$http({
method: 'GET',
url: '/records/json/',
}).success(function(data){
// With the data succesfully returned, call our callback
callbackFunc(data);
}).error(function(){
alert("error");
});
}
});
我的控制器看起来像这样
app.controller('ReCtrl', ['$scope', function($scope, dataService){
dataService.getdata(function(dataResponse) {
$scope.fields = dataResponse;
});
....
但我收到错误TypeError: Cannot read property 'getdata' of undefined
。我不知道我做错了什么。我感谢任何帮助。
答案 0 :(得分:4)
您没有将服务(dataService
)注入控制器:
app.controller('ReCtrl',
['$scope', 'dataService', function($scope, dataService){
dataService.getdata(function(dataResponse) {
$scope.fields = dataResponse;
});
....
在定义控制器'dataService'
时注意'$scope'
之后的额外字符串ReCtrl
。