184 votes

Des expressions complexes sont-elles possibles dans ng-hide / ng-show?

Je veux le faire:

 ng-hide="!globals.isAdmin && mapping.is_default"
 

mais l'expression est toujours évaluée à false .

Je ne veux pas définir de fonction spéciale sur $scope .

214voto

Mark Rajcok Points 85912

Utilisez une méthode de contrôleur si vous devez exécuter du code JavaScript arbitraire ou définir un filtre qui renvoie true ou false.

Je viens de tester (j'aurais dû le faire en premier), et quelque chose comme ng-show = "! A && b" a fonctionné comme prévu.

123voto

myaseedk Points 553

ng-show - ng-hide n'accepte que les valeurs boolean .

Pour les expressions complexes, il est bon d’utiliser le contrôleur et le scope pour éviter les complications.

Ci-dessous on travaillera (Ce n'est pas une expression très complexe)

 ng-show="User=='admin' || User=='teacher'"
 

Ici, l'élément sera affiché dans l'interface utilisateur lorsqu'une des deux conditions renvoie la valeur true (opération OR).

Comme cela, vous pouvez utiliser n'importe quelle expression.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X