我正在努力掌握Angular的ngResource。我从一个简单的代码摘录开始,摘自Angular的文档:
angular.module("app", ['ngResource'])
var user = $resource("/REST/user/:id", {userID:'@id'});
但是当代码运行时,我检查JS控制台,我看到一个错误说:
未捕获的ReferenceError:$ resource未定义
是的,我已经包含了'angular-resource.js'脚本。我想我忽略了一些明显的东西,但我无法推断出它是什么。请帮忙!
答案 0 :(得分:14)
根据评论中的建议,您需要创建使用$ resource的控制器或服务。
var app = angular.module('plunker', ['ngResource']);
app.controller('MainCtrl', function($scope, $resource) {
var dataService = $resource('http://run.plnkr.co/5NYWROuqUDQOGcKq/test.json');
$scope.data = dataService.get();
});
答案 1 :(得分:2)
仅供参考,它可以帮助任何人,我有这个不起作用。
$resource
初始化只是返回undefined null,没有资源服务对象。
myConstrollers.controller('ConsumerListController',['$scope', '$http','$resource','ConsumerService',function($scope, $http,$resource, ConsumerService) {
$scope.consumers=ConsumerService.query();
}]);
没有错误。事实证明,出于某种原因,我猜你不能使用$resource
和$http
。一旦我删除$http
,因为我之前使用的是较低级别的api,它就开始工作了。非常奇怪。