ngrepeat,子指令和插值

时间:2015-03-30 15:03:36

标签: angularjs interpolation

(使用angularjs 1.3) 在ng-repeat块中,我有一个自定义指令,它试图根据重复循环的当前项来识别上下文,即在链接函数中我有一行:

var context = $parse(attrs.context);

在视图中,我有:

<div ng-repeat="item in items">
  <div my-directive context="{{$index}}"></div>
</div>

$ index只是一个例子,我也可以有item.title。 这里的问题是每次调用我的指令链接函数时,上下文等于0或与循环的第一次迭代相关的任何值。

更新

看来我不需要$ parse。 attrs.context是我需要的值。但是,它总是相同的0值。奇怪的是我在链接功能中添加了这一行:

var interpolation = $interpolate(attrs.context);

信不信由你,但是对于这一行(无论它在函数中的哪个位置),每次对link函数的进一步调用都会带来attrs.context(0,1,2,...)中的期望值。

1 个答案:

答案 0 :(得分:0)

你也需要提供你的指令代码,但我猜你的指令有非隔离范围,这导致在每次重复ng-repeat时重写上下文变量。