angular-fullstack指令导致错误:[$ injector:unpr]

时间:2015-03-09 01:23:28

标签: angularjs yeoman angular-fullstack

我有一个我一直在努力的角度 - 全栈项目。一切都运转正常,直到我试图做出指示。起初我认为我的指令过于复杂,但我已经尝试过库存,生成指令,但我仍然遇到同样的错误。

指令在这里:

 'use strict';

 angular.module('angularApp')
      .directive('test', function () {
        return {
          templateUrl: 'app/test/test.html',
          restrict: 'EA',
          link: function (scope, element, attrs) {
          }
        };
      });

我在main.js

中注入它
'use strict';

angular.module('angularApp')
  .controller('MainCtrl', function ($scope, $http, socket, characterService, test) {
    $scope.path = new Array();
    $scope.heroes = new Array();

    characterService.all().success(function(data) {
      $scope.heroes = data;
    });

  });

只要我在注入的东西列表中没有测试,一切正常,但是如果它在那里,我得到错误。

angular.js:11607错误:[$ injector:unpr]未知提供者:testProvider< - test< - MainCtrl

我还需要添加其他地方吗?我已经尝试将它添加到依赖项列表中,如下所示:

angular.module('angularApp')
      .controller('MainCtrl', ['test', function ($scope, $http, socket, characterService, test)
    ...

但这似乎没有任何区别。

1 个答案:

答案 0 :(得分:2)

在...控制器中注入指令有什么意义?

它完全没有意义,因为指令旨在构建一个新的HTML属性/标记:

<test></test>
例如

此外,指令可以在其实现中定义/使用控制器 不要混淆整体;)