【发布时间】:2015-08-08 16:09:12
【问题描述】:
我正在尝试在 angularJS 中对指令进行自定义嵌入,因为我需要将两个单独的元素嵌入到两个单独的位置。
问题在于,尽管某些指令在转入内容上继续工作,例如 ng-bind,但其他一些指令(例如 ng-if 或 ng-repeat)则不会,即使在使用正确范围重新编译转入的元素之后也是如此。
示例:http://jsbin.com/menakapoma/1/edit?html,js,output
正如您在示例中看到的那样,ng-bind 有效,但 ng-if 无效,即使它们都在同一范围内并访问相同的值。 ng-if 的真假状态都不起作用。
我相信这是因为 ng-if 指令被嵌入为注释,但是即使我将嵌入指令的优先级设置为 9999 并在预链接功能中执行它仍然不起作用。
有人知道如何使这些指令起作用吗?
【问题讨论】:
-
我遇到了类似的问题,但无法创建演示我的解决方案的小提琴。我的解决方案是先将
.append克隆到模板,然后移动克隆的容器 的.contents而不是克隆本身。希望这会有所帮助。
标签: javascript angularjs angularjs-directive transclusion