0
我已經爲我的sidenav指令。在我的sidenav我有一些元素下面有子菜單項。目前我只能在sidenav中切換一個元素,但我需要至少2-3個元素。我應該如何實現它?AngularJS子菜單中的ng-show指令
我的指令代碼:
menuItem.directive("menuItem", function() {
return {
restrict: "E",
template: "<div ng-click='toggle($event)' ng-transclude></div>",
transclude: true,
scope: {
hash: "@",
show: '=',
},
link: function($scope) {
$scope.toggle = function(e) {
$scope.show = !$scope.show;
}
}
}
});
我的HTML代碼:
<menu visible="leftVisible" alignment="left">
<menu-item hash="first" show="someVar">
Side Menu item
<ul ng-show="someVar">
<li>
<a>First submenu item</a>
</li>
<li>
<a>First submenu item</a>
</li>
</ul>
</menu-item>
<menu-item hash="second" show="someVar">
Side Menu item
<ul ng-show="someVar">
<li>
<a >Second submenu item</a>
</li>
<li>
<a >Second submenu item</a>
</li>
</ul>
</menu-item>
<menu-item hash="third">Side Menu item</menu-item>
</menu>
我的目標是,我可以單獨與NG-展現在sidenav打開子菜單,任何想法怎麼辦呢?
當我點擊2個菜單鏈接時,它會打開兩個子菜單,誰應該實現只有一個子菜單在當時打開,因此當你點擊另一個菜單項時,它將關閉所有其他子菜單? –
你確定你已經改變了第二個項目的'show'值嗎?第一個使用'menu1',第二個''menu2'。看看第一個代碼示例 – Random
對不起,我說我的問題有點不對,這個解決方案工作得很好。我的意思是,如何實現可以說我按下menu1並顯示它的情況,然後按menu2並顯示它,但我希望菜單1在按menu2時關閉等。 –