Javascript 如何通过路由器控制器更换ng类?

Javascript 如何通过路由器控制器更换ng类?,javascript,angularjs,angular-ui,angular-ui-router,Javascript,Angularjs,Angular Ui,Angular Ui Router,这是我的html: <div class="navigation"> <ul class="nav nav-tabs"> <li ng-class="tab1"> <a ui-sref="general" ng-click="tab1='active'; tab2=''; tab3=''">General</a> </li> <li ng-

这是我的html:

<div class="navigation">
    <ul class="nav nav-tabs">
        <li ng-class="tab1">
            <a ui-sref="general" ng-click="tab1='active'; tab2=''; tab3=''">General</a>
        </li>
        <li ng-class="tab2">
            <a ui-sref="corrective" ng-click="tab1=''; tab2='active'; tab3=''">Corrections</a>
        </li>
    </ul>
</div>
}))


对不起,我是beginer,我需要改变ng等级,这取决于路线。有什么问题吗

现在您正在给
  • 选项卡1
    。这可能不是你想做的。相反,您可以:

    <li ng-class="{'active': tab1=='active'}">
    
    每当我想基于状态有条件地应用类时,我会:

    <li ng-class="{'active' : isActive('someState','anotherState','moreStates')}">
    

  • 除此之外,您不再需要单击
    ng
    s

    $rootScope.isActive = function() {
      return Array.prototype.some.call(arguments, function(arg) {
        return $state.is(arg);
      });
    }
    
    <li ng-class="{'active' : isActive('someState','anotherState','moreStates')}">
    
    <li ng-class="{'active' : isActive('general')}">
    
     <li ng-class="{'active' : isActive('corrective')}">