我的 ng-click($index) 上没有子菜单 show/hide
Submenu doesn´t show/hide on my ng-click($index)
我想在我的网站上做一个树状菜单。
单击父项时,我希望子项为 show/hide。
此解决方案不起作用。即使它将 item.active
值更改为 false/true。我的朋友们有什么想法吗?
这是我的 HTML:
<div id="sidebar-wrapper">
<div class="cssTreeMenu tree">
<ul class="sidebar-nav">
<li ng-repeat="item in items" >
<a ui-sref="{{item.sref}}" ui-sref-active="active" ng-click="testcolaps($index)">{{item.name}}</a>
<ul ng-show="{{item.active}}" class="navbarColorOnClick">
<li ng-repeat="subItem in item.subItems" ui-sref-active="active">
<a ui-sref="{{subItem.sref}}">{{subItem.name}}</a>
</li>
</ul>
</li>
</ul>
</div>
这是我的控制器:
$scope.testcolaps = function (index) {
$scope.items[index].active = !$scope.items[index].active;
};
$scope.items = [
{
name: "Test",
sref: "kpi.test",
active: false,
subItems: [
{
name: "Selectable KPI menu",
sref: "kpi.selectableKpiMenu"
},
{
name: "Test",
sref: "kpi.test"
}
]
},
{
name: "Test2",
sref: "kpi.test",
active: false,
subItems: [
{
name: "Selectable KPI menu 2",
sref: "kpi"
},
{
name: "Test 2",
sref: "internal"
}
]
},
];
如您所见,我的物品有一个 active:
属性,我将其更改为 true/false。但是我的菜单中仍然没有任何反应。如果我将它硬编码为真,它会像它应该的那样显示,但点击事件仍然不起作用。
ng-show
中的表达式需要一个没有 {{}}
插值的表达式。基本上你需要删除 {{}}
.
ng-show="item.active"
我想在我的网站上做一个树状菜单。
单击父项时,我希望子项为 show/hide。
此解决方案不起作用。即使它将 item.active
值更改为 false/true。我的朋友们有什么想法吗?
这是我的 HTML:
<div id="sidebar-wrapper">
<div class="cssTreeMenu tree">
<ul class="sidebar-nav">
<li ng-repeat="item in items" >
<a ui-sref="{{item.sref}}" ui-sref-active="active" ng-click="testcolaps($index)">{{item.name}}</a>
<ul ng-show="{{item.active}}" class="navbarColorOnClick">
<li ng-repeat="subItem in item.subItems" ui-sref-active="active">
<a ui-sref="{{subItem.sref}}">{{subItem.name}}</a>
</li>
</ul>
</li>
</ul>
</div>
这是我的控制器:
$scope.testcolaps = function (index) {
$scope.items[index].active = !$scope.items[index].active;
};
$scope.items = [
{
name: "Test",
sref: "kpi.test",
active: false,
subItems: [
{
name: "Selectable KPI menu",
sref: "kpi.selectableKpiMenu"
},
{
name: "Test",
sref: "kpi.test"
}
]
},
{
name: "Test2",
sref: "kpi.test",
active: false,
subItems: [
{
name: "Selectable KPI menu 2",
sref: "kpi"
},
{
name: "Test 2",
sref: "internal"
}
]
},
];
如您所见,我的物品有一个 active:
属性,我将其更改为 true/false。但是我的菜单中仍然没有任何反应。如果我将它硬编码为真,它会像它应该的那样显示,但点击事件仍然不起作用。
ng-show
中的表达式需要一个没有 {{}}
插值的表达式。基本上你需要删除 {{}}
.
ng-show="item.active"