2016-03-20 18 views
0

ここでは同様の質問がありますが、これと最も単純なユースケースではありません。同じ要素に対してclassとng-classを使用しています。クラスng-classのクラス

私はng-repeatで生成されたULを持っています。 LIは.itemクラスを持つスタイリングを取得し、選択されたLIは、現在選択されているLI(ユーザ)であれば、ng-classで動的に追加された.activeクラスを取得します。

ng-classだけを使用すると動作します。しかし、私が標準クラスを追加したいとき、それはしません。

Whats up?大変感謝---

これは動作し、選択されたLIは.activeクラスを取得します。

<li ng-repeat="user in mainList.users" ng-class="{'active':isCurrentUser(user)}"> 

これは動作しません:

<li ng-repeat="user in mainList.users" class="item" ng-class="{'active':isCurrentUser(user)}"> 

答えて

1

はまあいつもの回避策があります:D:

<li ng-repeat="user in mainList.users" ng-class="{'item' : true, 'active': isCurrentUser(user)}"> 
    {{user}} 
</li> 

イムわからないあなた、あなたがNGクラスでクラスを呼び出すことが、1つのdosent仕事ならば、他のを確認し、それらの引用を持っているとします。これが助けて欲しい!

+0

'' item ':true'は必要ありません..私は理解していません、なぜあなたは 'class =" item "'が削除されると思いますか? –

+0

その質問によると、その仕事は@PankajParkarに尋ねられました。私はちょうど回避策を与えています。 – amanuel2

+0

それは私の悪かった、それは全体の時間を働いていた。私は質問を削除しようとしましたが、できませんでした。これも機能し、私はそれを受け入れました。 –

0

私はあなたがクラスとngのクラスを使用して、クラスを上書きしていると思いたいです。 item:trueをng-classに入れて、それを回避する方法として?

2

これを試してみてください。それはうまく動作します。

<li ng-repeat="user in mainList.users" class="item ng-class:{'active':isCurrentUser(user)}"> 
+0

私はこれがうまくいかない、実際の例を共有することができますか? –

+0

これをテストしました。isCurrentUser(user)が真の値を返した場合に動作します。これを確認してくださいhttps://jsfiddle.net/ashecret/Lt7aP/2400/ –

+0

kuddos +1 .. –

0

私は本当に覚えていれば、あなたはこのようにそれを行うことができます。

<li class="item" ng-repeat="user in mainList.users" ng-class="{'active':isCurrentUser(user)}"> 

最初にすると仮定クラス。両方のクラスで同じ属性を使用しないとうまくいくでしょう。 The Many Ways To Use ng-class

楽しむ:あなたはまだ私はこのブログを訪問することをお勧めします問題がある場合は

<!-- add the text-error class if wrong is true --> 
<div class="item ng-class:{ 'text-error': wrong };">Stuff Goes Here</div> 

:それは動作しない場合

また、あなたはこのようにそれをしようとすることができます!

関連する問題