AngularJS ng-classe plusieurs conditions avec OU opérateur

J'essaie de trouver la bonne syntaxe pour ajouter des classes en fonction de valeurs angulaires.
Je veux activer une classe concernant les 2 conditions (un sur live les modifications de l'utilisateur, et un sur le chargement de données) avec l'un OU de l'exploitant.

Ici est la ligne :

 <a href="" ng-click="addFavorite(myfav.id);favorite=!favorite">
    <i class="fa orange" ng-class="{'fa-star': (favorite || (fav==myfav.id)), 'fa-star-o': !favorite}"></i>
 </a>

J'ai essayé des différents codes comme celui-ci :

 ng-class="{'fa-star': favorite, 'fa-star': (fav==myfav.id), 'fa-star-o': !favorite}"

sans succès.
Quelqu'un peut-il m'aider à trouver la bonne syntaxe ?

Il devrait être {'fa-star': favorite || fav == myfav.id, 'fa-star-o': !favorite}. Voir un exemple similaire dans ce plunkr. J'ai essayé de remplacer ce code avec ng-class="{'has-error': ctrl.submitted && 1 == 1} et il fonctionne.
Parens devrait fonctionner tout aussi bien. Si je change de votre Plunkr code et de les ajouter à votre ET d'expression, tout fonctionne toujours. Je suppose que l'OP a un autre problème avec leur code.
Oui, c'était mon premier code, mais il semble qu'il ne s'applique pas à la classe. J'ai testé la fav == myfav.id à l'extérieur et il retourne "true" comme il se doit.
Oh. Pourrait-il être quelque chose à propos de la logique : si !favorite mais fav==myfav.id le résultat serait à la fois fa-star fa-star-o et la dernière s'applique et visuellement ne pas changer l'icône. Donc je ne suis pas sûr que mon "switch" fonctionne dans ce cas

OriginalL'auteur user1713964 | 2014-06-18