在子指令中访问父指令的控制器范围变量

时间:2015-12-08 08:30:03

标签: javascript angularjs angularjs-directive

我有两个指令,即父母'和孩子'。我想根据父指令控制器中作用域变量的值设置child指令的可见性。

<div>
    <h1>Parent Directive selected index : {{ selectedIndex }}</h1>
    <div id="children" ng-transclude></div>
</div>

父指令的控制器在其范围内有selectedIndex变量,子指令在其范围内有id个变量。我正在尝试使用

在子指令上使用ng-show
<div ng-show="id==selectedIndex">
  <h1>{{id}}</h1>
</div>

它无法正常工作。

我附加了场景的jsfiddle链接。

https://jsfiddle.net/vibhanshu/pep44qz7/10/

1 个答案:

答案 0 :(得分:1)

您可以在子指令selectedIndex: '='

上定义bidrectional属性
scope: { id: '@', selectedIndex: '='}

<parent>
      <child id="1" selected-index="selectedIndex"></child>
      <child id="2" selected-index="selectedIndex"></child>
</parent>

更新了小提琴 - https://jsfiddle.net/pep44qz7/12/