我有一个像这样定义的MyResource服务:
angular.module('resourceApp')
.factory('MyResource', ['$resource', function($resource) {
return $resource('/data');
}]);
然后我有一个使用MyResource作为依赖的控制器:
angular.module('resourceApp')
.controller('MainCtrl', ['MyResource', function($scope, MyResource) {
$scope.data = MyResource.get(); // <-- this is where the error occurs
}]);
当我像上面那样定义依赖性时,使用内联数组注释,我收到错误&#34; MyResource未定义&#34;在标有评论的行。
但是如果我将语法更改为隐式注释:
angular.module('resourceApp')
.controller('MainCtrl', function($scope, MyResource) {
$scope.data = MyResource.get();
});
我以某种方式神奇地让事情发挥作用!
问题是:第一个出了什么问题?我可以留下隐含的注释,但文档说它不会在缩小时存活下来。
答案 0 :(得分:1)
您忘了在数组中指定$ scope:
.controller('MainCtrl', ['$scope', 'MyResource', function($scope, MyResource) {
答案 1 :(得分:1)
你忘记了第一个中的$ scope,它应该是:
anguar.module('app').controller('CTRL', ['$scope', 'MyService', function($scope, Service)
目前您没有范围,$ scope变量实际上指向服务