在指令内定义范围

时间:2016-04-21 11:39:09

标签: angularjs

我有以下指令:

angular.module("app").directive("validation", validation);

function validation() {

  var validation = {
    controller: controller,
    link: link,
    replace: false,      
    restrict: "A",
    scope: {
      phrase: ""
    }
  };

  return validation;

  function controller(scope) {
    scope.phrase = "hello";
  } 

  function link(scope, element, attributes) { } 

}

当我应用它时,我收到错误“指令的无效隔离范围定义”。

我正在定义一个范围,因为我需要子指令来访问scope.phrase。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

您应该指定变量应该是哪种类型的隔离范围:

尝试:

scope: {
  phrase: "="
}

我建议您阅读:https://github.com/angular/angular.js/wiki/Understanding-Scopes#directives