gpt4 book ai didi

javascript - angularjs ui-router 当前处于事件状态

转载 作者:行者123 更新时间:2023-11-29 15:31:23 26 4
gpt4 key购买 nike

我正在 Controller 中创建一个菜单。

$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")
}
]

我设置了一个属性来指定事件状态。如果我的状态是当前状态,则 active 属性将为真。

        <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>

但是当我改变状态时,active 属性没有触发。

最佳答案

您建议的解决方案更正:

<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”(或任何子状态),并且包含值为“bilbobaggins”的状态参数“user”时,生成的 HTML 将显示为(注意“active”类):

<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>

关于javascript - angularjs ui-router 当前处于事件状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34463258/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com