![](/img/trans.png)
[英]Multiple directives > [flexSlider, slide] asking for transclusion
[英]Angular-foundation multiple directives asking for transclusion
我正在使用has-dropdown指令,并且尝试在顶部栏上递归地生成导航链接,但是我的角度抛出了错误:
Error: [$compile:multidir] Multiple directives [ngInclude, hasDropdown] asking for transclusion on: <li ng-repeat="data in pageList" ng-include="'tree.html'" ng-if="!data.node.length == 0" has-dropdown="">
这是我的用法:
<ul class="right">
<li ng-repeat="data in pageList" ng-include="'tree.html'" has-dropdown>
</li>
</ul>
<script type="text/ng-template" id="tree.html">
<a>[[data.name]] [[data.parent]]</a>
<ul top-bar-dropdown>
<li ng-repeat="data in data.node" ng-include="'tree.html'"></li>
</ul>
</script>
我知道我不能在一个元素中使用ng-include和has-dropdown,但是我需要做一些事情才能使其正常工作能否给我一个提示,以了解我要解决的问题?
这是演示: http : //plnkr.co/edit/Rxxt3ufG26PAM7GYoNOJ?p=preview 具有简化的数据结构。
以分层的方式重新排列指令会有所帮助。 这样您就可以:
ng-repeat> ng-include> has-dropdown
<ul class="right">
<div ng-repeat="data in pageList" ng-include="'tree.html'">
</div>
</ul>
<script type="text/ng-template" id="tree.html">
<li has-dropdown>
<a>{{data.name}}</a>
<ul top-bar-dropdown>
<li ng-repeat="submenu in data.node" ng-include="'simple.html'"></li>
</ul>
</li>
</script>
<script type="text/ng-template" id="simple.html">
//
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.