Angular指令要求 - 找不到控制器

时间:2015-08-28 00:57:02

标签: angularjs

我正在尝试让指令需要一个单独定义的控制器(例如在指令之外)。我见过的所有例子都是使用控制器函数/选项的链式指令。

我想要做的是按照通常的规范定义一个控制器,然后有一个指令,它将嵌套在控制器中,标记需要它并获得对它的访问权。

像这样:

app.controller('MyController', function() {
    $scope.awesomeProperty = 11;
});


app.directive('someDirective', function() {
  return {
    scope: {},
    require: '^MyController',
    link: function($scope, el, attrs, ctrl) {
        console.log(ctrl.awesomeProperty); //11
    }
  }
});

但是,这会引发ctreq错误 - 它无法找到控制器。注意我使用“^”来表示祖先,因为在所有情况下,外部包含元素将包含控制器。

我只是误解了这个吗?我加倍了三重检查拼写等。在这种情况下,“控制器”是否与仅通过指令定义的实际“角度控制器”不同?

感谢您的帮助。

0 个答案:

没有答案