这感觉就像模板引擎中的一个相当基本的功能,但我似乎在某种程度上错过了它。
假设这样的模板:
<a ng-if="icon.link" href="icon.link">
<i ng-class="['fa',icon.icon_class]"></i>
</a>
<span ng-if="!icon.link">
<i ng-class="['fa',icon.icon_class]"></i>
</span>
这将实现我想要的,但缺点是每当我想要有条件地使用不同的父元素时,它需要复制所有子元素。
有没有办法做类似的事情:
<span ng-if-include-children="!icon.link">
<a ng-if-include-children="icon.link" href="icon.link">
<i ng-class="['fa',icon.icon_class]"></i>
</a>
</span>
基本上我只想弄清楚更换容器元素的最佳方法,而不是复制其所有内容。
答案 0 :(得分:1)
ng-if
&amp; ng-show/hide
指令发生在节点级别,这意味着如果您没有显示父节点,则可以预期子节点也不会显示。
有没有办法做类似的事情:
是,如果您制作自定义指令,但是......
话虽如此,这更像是一个整容问题,而不是一个实际的功能问题 - 请参阅我在这里提出类似问题的答案https://stackoverflow.com/a/34595198/1121919