在AngularJS控制器中获取$ resource调用的值

时间:2013-05-05 13:25:07

标签: javascript angularjs controller

我正在使用AngularJS并且我已经进行了$ resource调用以获取单个值(例如,fetch使我得到14)。

以下是我的控制器:

var MaxCount = $resource('/maxquestion/fetch', null, 
{
    getMaxQuestionCount: {method: 'GET', isArray: false}
});
$scope.maxQuestionCount = MaxCount.getMaxQuestionCount();

现在我正在尝试在控制器中使用$scope.maxQuestionCount$scope.maxQuestionCount[0]给我1$scope.maxQuestionCount[1]给我4

console.log($scope.maxQuestionCount)[object Object]  console.dir($scope.maxQuestionCount)There are no child objects

我很困惑。如何访问值14?

1 个答案:

答案 0 :(得分:5)

使用$resource这样的数据结构真的没什么意义。问题是$resource对于使用所有HTTP谓词的RESTful端点非常有用。为了方便起见,AngualarJS使用便捷方法扩展了传入的对象($ save,$ delete等)。如果您返回原语,则没有扩展空间,$resource的一个主要好处就消失了。

简而言之:如果您刚刚获取数据$资源是一个过度的IMO,请坚持使用$http$http服务虽然与$resource相比被认为是较低级别,但非常方便且易于使用。举个例子,你可以写:

$http.get('/maxquestion/fetch').success(function(result){
  console.log(result);
});

有关更多示例,请参阅文档:http://docs.angularjs.org/api/ng。$ http