0

语境:

我正在使用名为opensAsPopup.

问题:

其中一些元素具有来自ng-repeat指令的动态内容,并且似乎我的opensAsPopup指令在字符串插值之前应用。

在字符串插值之后可以应用灯箱效果吗?


HTML:

<li>
  <a href="/path/to/{{entry.id}}" opens-as-popup>Link</a>
</li>

脚本:

app.directive("opensAsPopup", [ ->
  restrict: "A"
  scope: {}
  replace: false
  transclude: false
  compile: (tElement, tAttrs) ->
    new lightbox(tElement.get(0))
])
4

1 回答 1

4

您需要在链接功能中执行此操作。范围直到链接阶段(编译阶段之后)才应用。也不要在同一元素(已删除scope: {})上创建隔离范围,因为这意味着您需要scope.entry.id在链接函数中进行设置。所以:

app.directive("opensAsPopup", [ ->
  restrict: "A"
  replace: false
  transclude: false
  link: (scope,tElement, tAttrs) ->
    new lightbox(tElement.get(0))
])
于 2013-08-17T11:28:03.057 回答