简体   繁体   English

$ injector:unpr未知提供者

[英]$injector:unpr Unknown Provider

I just started learning angularjs, and run into this problem. 我刚刚开始学习angularjs,并遇到了这个问题。 The above error occurs when I run the application. 当我运行该应用程序时,会发生上述错误。 My codes are as follows 我的代码如下

app.js app.js

'use strict';
angular.module('underscore', []).factory('_', function () {
return window._;
});

var myApp = angular.module('myApp', [
'ngRoute']);

myApp.config(function ($routeProvider) {
$routeProvider
    .when('/a',
    {
        controller: 'aController',
        templateUrl: 'module/a/a.html'
    })
    .otherwise({redirectTo: '/view1'});
});

a.js (controller) a.js(控制器)

'use strict';

myApp.controller('aController',
function($scope,aCollection, $location) {
    $scope.foo= {

    };

    $scope.create= function() {
        aCollection.create($scope.foo);
        $location.path('/a-creation');
    };
});

aCollection.js (service) aCollection.js(服务)

'use strict';

myApp.factory('aCollection', function($resource) {
return $resource('../api/dummy', {}, {
    create : {method: 'POST' }
})
});

The error is: 错误是:

Error: [$injector:unpr] http://errors.angularjs.org/1.3.16/$injector/unpr?p0=%24resourceProvider%20%3C-%20%24resource%20%3C-%20aCollection
at Error (native)
at http://localhost:9080/lib/angular.min.js:6:417
at http://localhost:9080/lib/angular.min.js:38:7
at Object.d [as get] (http://localhost:9080/lib/angular.min.js:36:13)
at http://localhost:9080/lib/angular.min.js:38:81
at d (http://localhost:9080/lib/angular.min.js:36:13)
at Object.e [as invoke] (http://localhost:9080/lib/angular.min.js:36:283)
at Object.$get (http://localhost:9080/lib/angular.min.js:34:268)
at Object.e [as invoke] (http://localhost:9080/lib/angular.min.js:36:315)
at http://localhost:9080/lib/angular.min.js:38:110 <div data-ng-view="" class="ng-scope">

Can someone help me out with this?? 有人可以帮我吗? Many Thanks!!! 非常感谢!!!

Can you try this one? 你可以试试这个吗?

'use strict';

angular.module('myApp')
.controller('aController', ['$scope', 'aCollection', '$location', function($scope, aCollection, $location) {
    $scope.foo= {

    };

    $scope.create= function() {
        aCollection.create($scope.foo);
        $location.path('/a-creation');
    };
}]).factory('aCollection', function($resource) {
      return $resource('../api/dummy', {}, {
           create : {method: 'POST' }
      })
});

EDITED 已编辑

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM