我想根据AngularJS上的当前状态更改body类。
E.g。如果 state1 ,那么body class="blue"
;
如果 state2 ,则body class="red"
;
我有两种状态:
.state('app.state1', {
url: "/state1",
data: {
class: blue
},
templateUrl: "state1.html",
controller: "MyCtrl"
})
.state('app.state2', {
url: "/state2",
data: {
class: red
},
templateUrl: "state2.html",
controller: "MyCtrl"
});
然后,在index.html
:
<body ng-app="myApp">
<div ui-view></div>
</body>
关于如何做到这一点的任何想法?
这个答案解决了这个问题:https://stackoverflow.com/a/32574746
答案 0 :(得分:0)
您可以使用ng-class
,https://docs.angularjs.org/api/ng/directive/ngClass
<body ng-class="{red: x==='red', blue: x==='blue'}">
...
</body>
答案 1 :(得分:0)
您是否尝试过使用ui-sref-active指令。
为了在ui-router状态匹配时使类对元素有效,请使用以下命令:
UI-SREF活性= “活性”
http://angular-ui.github.io/ui-router/site/#/api/ui.router.state.directive:ui-sref-active