私の<body>
要素でクラスを変更します(現在$state
のウェブサイトが表示されています)。テンプレート内に角度のrootScopeが表示されない
私は<body class="{{specialClass}}">
と言います。specialClass
は、$rootScope
の変数です。この変数は、私のメインのアプリモジュールのrun
ブロックに設定されている。いくつかの理由
angular.module("main", [dependencies])
.run(function($rootScope) {
$rootScope.$on('$stateChangeSuccess', function(event, currentState){
switch (currentState.name) {
case "about":
console.log("I'm on landing page, set specialClass in $rootScope");
$rootScope.specialClass = 'landing-page';
break;
default:
$rootScope.specialClass = '';
break;
}
})
});
、私のテンプレートがspecialClass
変数が表示されませんので、クラス属性は空です。同時に、"I'm on landing page, set specialClass in $rootScope"
が表示されます。
どういうところが間違っていますか?
マイフルindex.html
テンプレート:
<html>
<head>
<base href="/">
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>My project</title>
</head>
<body ng-app="main" class="{{specialClass}}">
<ui-view>
This is my application.
</ui-view>
</body>
</html>
さらにクレイジーだ何が私はWebPACKのdevのサーバーと開発のフロントエンドを提供する場合、それはOK作品で、クラスが切り替わります。しかし、私がDjangoのプロダクションでこれを提供するとき、それはそうではありません。両方の場合にコンソール出力が存在します。
てみ使用NG-クラスディレクティブ? ? 'ngApp'ディレクティブにbodyタグが含まれている必要があります。 – Revive
どのタグに – Hitmands
そのテンプレートはどこですか? –