AngularJS - 传递参数以在自定义指令

时间:2015-05-12 09:15:43

标签: angularjs angularjs-directive angularjs-filter

我试图将参数(true,false)传递给自定义指令中的过滤器,但我总是得到一个未定义的'。

<job jobs="jobs" activateFilter="activateFilter">

在控制器中(在customDirective之外):

$scope.activateFilter = true;

这是指令:

...
restrict: 'E',
        scope: {
            jobs: "=jobs",
            activateFilter: "=activateFilter"
        },
        controller: controller,
        templateUrl: "/views/templates/job.html"
...

这是模板:

... data-ng-repeat="job in jobs | customFilter:activateFilter ...

任何想法我做错了什么? activateFilter始终未定义。 谢谢!

1 个答案:

答案 0 :(得分:1)

尝试将属性名称设置为小写和划线分隔:

<job jobs="jobs" activate-filter="activateFilter">

请参阅规范化和隔离指令范围内的this

  

注意:指令范围选项中的这些= attr属性是   标准化就像指令名称一样。绑定到div中的属性   bind-to-this =&#34; thing&#34;,你指定= bindToThis的绑定。