AngularJS:将函数和变量传递给指令

时间:2015-01-15 18:01:08

标签: angularjs angularjs-directive

我有一种情况,我必须传递控制器中声明的指令,函数和变量。我很容易用$ scope做到这一点。但我读了一篇文章说明我们不应该填充范围而是使用它。该文章有以下示例 -

//Don't do this
app.controller('MyCtrl', function($scope){
    $scope.name = 'Techno Fattie';
});

//Do this
var MyCtrl = function(){
   this.name = 'Techno Fattie';
};

app.controller('MyCtrl', MyCtrl);

我喜欢这个想法,我尝试在我的情况下实现相同的操作,如下所示 -

我有一个CountryController - 我修改后使用它来代替$ scope。 我有一个countryList.tpl.html - 它只有一个指令而没有其他代码。

现在我有一个父控制器,它有一个stateProvider,我在那里配置了country。像这样的东西 -

  .state('app.country', {
  url: "/country",
  templateUrl: "countryList.tpl.html",
  controller: CountryController 
})

我将控制器的$ scope转换为this但后来我发现我的指令没有收到函数和变量,并且页面加载不正确。

如果tpl文件有指令,那么这种方法没用吗?如果不是这样,那我们怎么做呢?有人可以帮忙吗?

0 个答案:

没有答案