我在我的应用程序中使用
angular-ui-router
和嵌套状态,我还有一个导航栏。导航栏是手写的,并使用ui-sref-active突出显示当前状态。它是一个两级导航栏。
现在,当我在,说产品/类别我想要两个产品(1级)和类别(2级)突出显示。但是,使用ui-sref-active,如果我在状态Products.Categories,那么只有该状态被突出显示,而不是产品。
有什么方法让产品在那个州突出?
代替这一点,
<li ui-sref-active="active"> <a ui-sref="posts.details">Posts</a> </li>
你可以这样做-
<li ng-class="{active: $state.includes('posts')}"> <a ui-sref="posts.details">Posts</a> </li>
目前它不工作。有一个讨论在这里(https://github.com/angular-ui/ui-router/pull/927),并将很快加入。
更新:
为了这个工作,$ state应该在视图中可用。
angular.module('xyz').controller('AbcController',['$scope','$state',function($scope,$state) { $scope.$state = $state; }]);
UPDATE [2]:
从版本0.2.11,它开箱即用。请检查相关问题:https://github.com/angular-ui/ui-router/issues/818