在我的角度应用程序中,我的依赖注入在哪里出错了

时间:2014-03-13 00:24:07

标签: javascript angularjs dependency-injection gruntjs yeoman

首先

angular.module('app', [
  'ngCookies',
  'ngResource',
  'ngSanitize',
  'ngRoute'
])

这是我的休闲工厂。没什么可看的

angular.module('app')
  .factory('myFactory', function () {
    // Service logic
    // ...

    // Public API here
    return {
      isSaved: true
    };
  });

这是我使用该服务的控制器。还有一个这样的。他们都遵循相同的模式

angular.module('app')
  .controller('AdvertisersCtrl', [ '$scope', '$location', 'myFactory', function ($scope, $location, myFactory) {
    $scope.$emit('controllerChange', 2);

    $scope.isFormSave = function () {
      // Form Validation
      myFactory.isSaved = true;
      $location.path('/saved');
    };
  }]);

最后,但肯定并非最不重要。我得到的错误。

Error: [$injector:unpr] Unknown provider: myFactoryProvider <- myFactory
http://docs.angularjs.org/error/$injector/unpr?p0=myFactoryProvider

此外,这个项目是用yoeman搭建的,它使用了ngmin ..以及yoeman提供的所有其他打包的grunt任务。

谢谢大家。

1 个答案:

答案 0 :(得分:0)

您是否创建了模块app
在上面的代码片段中,module()的两个调用都应该检索已存在的模块的实例 但你必须先创建它。

angular.module('app', [])angular.module('app')

更多信息:http://docs.angularjs.org/guide/module#creation-versus-retrieval