5

我正在尝试制作一些可重复使用的倒计时小部件。适用于静态内容,但是当我尝试动态添加它们时,我的指令不理解 ngRepeat 中的变量。

标记:

<div ng-repeat="cdn in countdowns" class="countdown" countdown-end="{{cdn}}">
  <p ng-hide="over">{{days}} jours {{hours}} heures {{minutes}} min {{seconds}} sec</p>
  <p ng-show="over">Done</p>
</div>

指示:

...
link: function(scope, elm, attrs) {
  scope.days = '1';
  ...
}
...

http://jsfiddle.net/hFGb7/14/

感谢您的回复。

4

1 回答 1

5

问题是插值不是由调用链接函数运行的。所以 的值{{cdn}}不可用。有几种处理方法:

  1. 您可以cdn直接在链接功能中使用,因为它在范围内可用。但这将使指令依赖于cdn范围内的存在。
  2. 获取使用插值的属性值的推荐方法是使用 $observe。检查这个:http: //jsfiddle.net/hFGb7/28/
于 2012-11-23T11:38:07.217 回答