angularjs-ui路由器当前处于活动状态
angularjs ui-router is current state active
我正在控制器中创建一个菜单。
$scope.menu = [
{
"title": "Home",
"state": "app.home",
"active": $state.is("app.home")
},
{
"title": "Product",
"state": "app.product",
"active": $state.is("app.product")
},
{
"title": "Category",
"state": "app.category",
"active": $state.is("app.category")
}
]
我设置了一个属性来指定活动状态。如果我的状态为当前状态,则活动属性将为true。
<ul class="nav nav-pills nav-stacked">
<li ng-repeat="item in menu" ng-class="{active:item.active}">
<a ui-sref="{{item.state}}"> {{item.title}}</a>
</li>
</ul>
但当我改变状态时,活动属性不会被激发。
您建议的解决方案更正:
<ul class="nav nav-pills nav-stacked">
<li ng-repeat="item in menu" ng-class="{active: $state.is('stateName')}">
<a ui-sref="{{item.state}}"> {{item.title}}</a>
</li>
</ul>
或者您可以简单地使用ui sref active:
示例
给定以下模板:
<ul>
<li ui-sref-active="active" class="item">
<a href ui-sref="app.user({user: 'bilbobaggins'})">@bilbobaggins</a>
</li>
</ul>
当应用程序状态为"app.user"(或任何子状态),并且包含值为"bilboaggins"的状态参数"user"时,生成的HTML将显示为(注意"活动"类):
<ul>
<li ui-sref-active="active" class="item active">
<a ui-sref="app.user({user: 'bilbobaggins'})" href="/users/bilbobaggins">@bilbobaggins</a>
</li>
</ul>
类名在指令链接时间内插值一次(对插值的任何进一步更改都将被忽略)。
可以以空格分隔的格式指定多个类别:
<ul>
<li ui-sref-active='class1 class2 class3'>
<a ui-sref="app.user">link</a>
</li>
</ul>
相关文章:
- 在Angular 2中布线期间保持零部件处于活动状态
- 如何使bxslider仅在移动视图中处于活动状态
- 悬停下拉菜单即使在鼠标移出后也保持活动状态
- 使用纯javascript而非jquery使所选选项卡处于活动状态并保持非活动状态
- 我如何为列出的选项卡元素编写一个Protractor测试,它会检查它是否's是否处于活动状态
- 返回上一页时,Javascript仍处于活动状态
- Angular+bootstrap ui,检查当前选项卡是否已处于活动状态
- 按钮处于活动状态,焦点无法在Mac FireFox上工作
- 禁用永久活动状态
- 单击我网站中的链接时打开新选项卡,保持当前选项卡处于活动状态
- 网页在等待 AJAX 响应时变为非活动状态
- 广告拦截处于活动状态,然后不要打开超链接到新标签
- 如何创建至少 1 个框处于活动状态的复选框列表
- 如何使按钮具有 :活动状态 1 秒
- JQuery UI 1.11 将选项卡设置为活动状态
- 如何获取链接以保持活动状态
- 限制 .live() 函数在 JavaScript 中变为活动状态的次数
- 如何在每次页面重新加载时更改渐变背景,同时保持光标位置元素处于活动状态
- 页面刷新后,所选选项卡处于非活动状态
- angularjs-ui路由器当前处于活动状态