0

我有一个我一直在做的 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:11607Error: [$injector:unpr] 未知提供者:testProvider <- test <- MainCtrl

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

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

但这似乎没有任何区别。

4

1 回答 1

2

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

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

<test></test>

例如。

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

于 2015-03-09T01:51:10.093 回答