【发布时间】:2016-12-23 11:08:44
【问题描述】:
如何将变量归因于 JSON name?
JSON names 对象
[
{ "name": "John", "age" : "12" },
{ "name": "Ben", "age" : "15" },
{ "name": "Jason", "age" : "18" },
{ "name": "Billy", "age" : "11" }
]
Angular 服务和控制器
var app = angular.module('app', []);
app.service('service', function($http, $q){
var deferred = $q.defer();
$http.get("jsonfile.json").then(function(data){
deferred.resolve(data);
});
this.getNames = function(){
return deferred.promise;
}
});
app.controller('secondCtrl', function($scope, service){
var promise = service.getNames();
promise.then(function(data){
$scope.names = data.data;
console.log($scope.names);
});
});
我在控制器中尝试做的事情:
var name = names.name;
然后我尝试了 HTML ng-repeat {{name}},但没有成功。
【问题讨论】:
-
$scope.names = 数据; console.log($scope.names.name)
-
就像你在
secondCtrl中所做的那样:promise.then(...) 是好方法。但是传递给then()的回调之外的任何地方都是无用的,因为服务没有完成检索数据
标签: javascript angularjs json