Я создаю меню в контроллере.angularjs ui-router текущее состояние активно
$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>
Но когда я изменяю состояние, активная собственность не стреляет.
Это потому, что вы вызов '$ state.is()' при создании '$ scope.menu'. Попробуйте передать такую функцию, как: '" active ": function() {$ state.is (" app.category ");}' – fodma1