AngularJS ngClass bedingt

Gibt es eine Möglichkeit, einen Ausdruck für etwas wie ngClass als Bedingung zu definieren? Ich habe zum Beispiel Folgendes versucht:

<span ng-class="{test: 'obj.value1 == \'someothervalue\''}">test</span>

Das Problem mit diesem Code ist, dass unabhängig von obj.value1 der Klassentest immer auf das Element angewendet wird. Dies tun:

<span ng-class="{test: obj.value2}">test</span>

Solange obj.value2 nicht einem Wahrheitswert entspricht, wird die Klasse nicht angewendet. Jetzt kann ich das Problem im ersten Beispiel folgendermaßen umgehen:

<span ng-class="{test: checkValue1()}">test</span>

wo die checkValue1 Funktion so aussieht:

$scope.checkValue1 = function() {
  return $scope.obj.value === 'somevalue';
}

Ich frage mich nur, ob ngClass so funktionieren soll. Ich erstelle auch eine benutzerdefinierte Direktive, in der ich etwas Ähnliches tun möchte. Ich kann jedoch keinen Weg finden, um einen Ausdruck zu sehen (und vielleicht ist das unmöglich und der Grund, warum es so funktioniert).

Hier ist ein Plan, um zu zeigen, was ich meine:

http://plnkr.co/edit/iSh0t8swDEyGbh7ylZg2?p=preview

Antworten auf die Frage(10)

Ihre Antwort auf die Frage