Angularjs:ngRepeat和指令

Ha *_* Ja 5 directive angularjs

我正在尝试制作一些可重复使用的倒计时小工具.适用于静态内容,但是当我试图动态添加它们时,我的指令不理解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>
Run Code Online (Sandbox Code Playgroud)

指示:

...
link: function(scope, elm, attrs) {
  scope.days = '1';
  ...
}
...
Run Code Online (Sandbox Code Playgroud)

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

谢谢你的回复.

abh*_*aga 5

问题是插值不是由调用时间链接函数运行的.所以价值{{cdn}}不可用.有几种方法可以解决这个问题:

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