我有一个API设置,它将JSON数据提供给$ resource。
在我的控制器中,我正在执行以下操作来查询特定行:
$scope.company = Companies.query({id: companyId});
但是,如果在我看来'然后我做了:
{{ company.company_name }}
它没有显示任何内容......如何将返回的JSON数据分配给'公司'范围?
答案 0 :(得分:1)
这就是我使用$ resource的方式
在Companyservice.js
this.queryItem = function (){
var deferred = $q.defer();
setTimeout(function() {
// deferred.notify('Saving data..');
var items = Company.query({},function() {
deferred.resolve(items.d.results);
}, function(error){
deferred.reject(error);
});
}, 1000);
return deferred.promise;
};
并在控制器中
var promise = CompanyService.queryItem();
promise.then(function(response){
// for each item in response, push item to array
angular.forEach(response, function(item){
$scope.companys.push(item);
});
}, function(reason){
console.log(reason);
});
您应该设置$scope.company = response;
希望这有帮助!
答案 1 :(得分:0)
首先,您是否尝试过console.log Companies.query({id: companyId});
验证数据是否存在?如果是这样,您可以获取数据异步。如果是这样,除非它被包装在$ http中,你需要告诉angular模型已经更新,以便视图可以刷新,只需这样做:
$scope.$apply();