Como aplico uma diretiva AngularJS com base em uma classe definida por ng-class?

Eu estou tentando aplicar condicionalmente uma diretiva para um elemento com base em sua classe.

Aqui está um caso simples do meu problema,veja os resultados neste violino. Para este exemplo, estou usando o mapa de nomes de classes para o formato booleano deng-class comtrue; no meu caso atual eu gostaria de usar o resultado booleano de uma função.

Marcação:

<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');
          }
      }
    }
  );

Por que a diretiva não está sendo aplicada aodiv que está recebendo sua classe atravésng-class? Estou entendendo mal a ordem em que o AngularJS está processando diretivas?

Como devo aplicar condicionalmente uma diretiva a um elemento com base na avaliação de uma expressão?

questionAnswers(3)

yourAnswerToTheQuestion