Angular 指令和 ng-class

Angular dirrectives and ng-class

假设一个带有 html 的指令,例如在 component.html 喜欢

<div class="text-field"
     ng-class="{'classA': varA}">
....
</div>

那我正在尝试做...

<component ng-class="{'classB': varB}"></component>

在那之后 ng-class 我有类似 {'classB': varB} {'classA': varA} 的东西显然不起作用。

问题是我无法更改 component.html 但我需要 add/remove class 键(取决于条件)。是否可以在我的情况下添加 ng-class 或者可能有另一种方法来 add/remove class?

尝试添加另一个通过脚本添加 class 的指令,例如

.directive('myDir',function(){
  return {
    scope:{
     varB:'='
    },
    link: function($scope,$element){
      if($scope.varB)
        $element.addClass('classB');
    }
  }
});

并像这样使用:

<component ng-class="{'classB': varB}" my-dir var-b="something"></component>