如何通过指令调用控制器上的函数?

时间:2015-08-31 02:06:20

标签: angularjs angularjs-directive

在我的指令中,我有一个调用函数的链接:

<a href="#" ng-click="resetFilter()">Reset Filter</a>

JS

app.directive('resetFilter', function () {
  return {
    templateUrl: 'myFilter.html'
  }});

我在控制器中定义了一个resetFilter函数:

$scope.resetFilter = function () {
    console.log('resetfilter');
}

问题是该功能没有触发?我怎样才能让它发挥作用?

1 个答案:

答案 0 :(得分:0)

Simple Directive具有控制器方法,因为您的指令具有默认范围。它默认会继承父作用域。

app.directive('resetFilter', function () {
return {
templateUrl: 'myFilter.html'
controller: function ($scope) {
   $scope.resetFilter(); // this will call function defined in your controller.
 }
}});