2016-07-20 8 views
0

コントローラのURLパスに基づいて要素のCSSクラスをどのように切り替えることができますか?コントローラを経由する場所パスに応じてCSSクラスを変更する

私はこのコードを以下のコードで試してみましたが、私は 'user'へのパスを変更してもクラスは変わらないので、助けてください、ありがとう。

HTML:コントローラで

<figure data-ng-class="{'account-balance': !isVisitor, 'lang-selector': isVisitor}"> 

$scope.accountView = function(viewLocation) { 
if(viewLocation === $location.path('/visitor')) { 
    return $scope.isVisitor; 
} 

}。

答えて

0

ここに私の答えです。唯一のことは、私はviewLocationが何であるか分からないということです。

私はこのようにそれを記述します。

<figure data-ng-class="accountView(viewLocation)">

関数は次のようになります。

$scope.accountView = function(viewLocation) { 
    var res; 
    if(viewLocation === $location.path('/visitor')) { 
    res = 'lang-selector'; 
    } else { 
    res = 'account-balance'; 
    } 
    return res; 
}; 

これは、コントローラ内のすべてのロジックを保持し、あなたがより詳細に制御できます。 if/elseではなく、switchステートメントにすることもできます。コントローラーに$locationが注入されていることを確認してください。

関連する問題