Angular 1:引用模板内的控制器对象

时间:2016-05-16 09:58:22

标签: javascript angularjs

我有一个像这样的简单指令:

RewriteRule ^ index.php [L]

在我的html模板中,我想引用如下的控制器变量(请注意上面的控制器被引用为cus):

myApp.directive('myDirective', function() {
  var controller = ['$scope',  function($scope) {
    function init() {
      this.name = "Sim";
      this.age = 6;
    }
    init();
  }];
  //define the directive object
  var directive = {};
  directive.controller = controller;

  directive.restrict = 'E';
  directive.templateUrl = "hello.html";
  directive.controllerAs= 'cus';//defining a name to the controller.
  return directive;
});

这是我的plunk问题

为什么此代码段不起作用?

1 个答案:

答案 0 :(得分:2)

可能的问题是使用'this'。而不是使用'this',而是使用controllerAs变量。

例如:

var cus = this;

function init() {
      cus.name = "Sim";
      cus.age = 6;
    }

init();