我正在尝试以角度将指令链接在一起。我想要做的是在指令中生成以下 html。
<div id="menu-brunch" class="tab-pane">
<div ng-init="init('brunch');" ng-controller="controllers.MenuController">
<div ng-repeat="item in menuItems">
<h3>{{item.name}}</h3>
<p>{{item.description}}</p>
<menuitems model="item.items" ></menuitems>
</div>
</div>
</div>
菜单项正在工作,但无论我尝试什么,我都无法创建“双重”指令。目标是创建另一个menu
将输出上述 HTML 的指令,例如:
<menu model='brunch'>
我尝试了什么:
angular.module('leanwxApp.directives', []).
directive('menu', ()->
template : "
<div id='tab-{{model}}' class='tab-pane'>
<div ng-init=\"init('{{model}}');\" ng-controller='MenuController'>
<div ng-repeat='item in menuItems'>
<h3>{{item.name}}</h3>
<p>{{item.description}}</p>
<menuitems model='item.items' ></menuitems>
</div>
</div>
",
restrict: 'E',
replace: true,
scope : {
'model' : '=model'
},
).directive('menuitems', ()->
template : "
<ul class='media-list'>
<li ng-repeat=\"item in model\">
<div class='pull-right'>{{item.price}}</div>
<div class=\"media-body\">
<h4 class=\"media-heading\">{{item.name}}</h4>
<p ng-bind-html-unsafe=\"item.description\"></p>
</div>
</li>
</ul>
",
restrict: 'E',
replace: true,
scope : {
'model' : '=model'
},
);
但它什么也没产生……建议?附带说明一下,我的“MenuController”使用init('<category>')
设置的任何内容执行 JSON 请求。例如/menu/<category>.json
。小提琴显示问题http://jsfiddle.net/ncapito/ALWQe/