4

コントローラーにクラスが設定された配列があります(このようにする必要があります。ページのメタテンプレートから読み取られます)。また、同じ要素に条件付きクラスを適用したいと思います。出来ますか?

編集、詳細情報: 私の html 要素には、2 つのソースに由来するクラスがあります。1 つは、コントローラーによって作成された一連のクラスです (これらは、コード外のサービスによって提供されます。ビューにハードコードすることはできません)。もう 1 つのソースは条件の出力です (例: if "$scope.activeElement === name_of_this_element, add 'active' class)。ng
-class ディレクティブでは、指定されていないクラスのリストにオブジェクト表記を使用できません(最初のソース) 条件付きクラスにはオブジェクト表記を使用する必要があります。

編集:解決策が見つかりました(以下を参照)。

4

4 に答える 4

0

クラス名の配列を保存したという事実は、ここでは関係ありません。

HTML

<div ng-class="arrOfClasses[condition]"></div>

角度

app.controller('myCtrl', function($scope) {
    $scope.arrOfClasses = ['class1', 'class2', 'class3'];

    $scope.condition = 1; // what ever number here
});
于 2013-12-09T20:47:57.143 に答える