我正在嘗試從JSON文件中讀取名稱。我首先使用唯一的控制器創建沒有服務的服務,然後將業務邏輯轉移到服務。我沒有清楚地知道如何將$ scope.mydata從服務返回給控制器。 沒有得到任何輸出,請幫助。謝謝。在AngularJS中使用服務將對象值返回給控制器
<!DOCTYPE html>
<html>
<head>
<title></title>
<!-- Add angularjs -->
<!-- Add controller script-->
<script type="text/javascript">
var app = angular.module('x2js', []);
app.controller('ctrl',
['$scope','myService',function($scope,myService){
$scope.data = function(){
myService.getData()
}
}]);
app.service('myService', ['$http','$log', function($http,$log){
this.getData = function(){
$http({
url:"student.json",
method:"GET",
dataType: 'json',
contentType: "application/json"
}).then(function(response){
$scope.myData = response.data.records;
$log.info($scope.post);
return($scope.myData);
},function(response){
$log.error("Error occured");
});
}
}])
</script>
</head>
<body ng-app="x2js">
<div ng-controller="ctrl">
<table>
<tr>
<td ng-repeat="x in Data">{{x.Name}}</td>
</tr>
</table>
</div>
</body>
</html>
仍然沒有輸出。 :( –
@AmitPhartiyal你使用'Data'到html和控制器的值分配給'data'變量 –
其實它是myData在他的例子中 – pegla