クラスに基づいて要素にディレクティブを条件付きで適用しようとしています。
これが私の問題の簡単なケースです。このフィドルの結果を参照してください。この例では、クラス名からng-class
withのブール値へのマップを使用していtrue
ます。私の実際のケースでは、関数のブール結果を使用したいと思います。
マークアップ:
<div ng-app="example">
<div class="testcase">
This will have the directive applied as I expect
</div>
<div ng-class="{'testcase':true}">
This will not have the directive applied but I expect it to
</div>
</div>
JS:
angular.module('example', [])
.directive('testcase', function() {
return {
restrict: 'C',
link: function(scope, element, attrs) {
element.css('color', 'red');
}
}
}
);
div
クラスを取得している にディレクティブが適用されないのはなぜng-class
ですか? AngularJS がディレクティブを処理する順序について誤解していますか?
式の評価に基づいて要素にディレクティブを条件付きで適用するにはどうすればよいですか?