Les directives – Learn Angular

Les directives – Learn Angular

directiveDans l’architecture Angular, les directives sont finalement partout. Les Components sont des directives à la seule différence qu’ils possèdent une fonctionnalité de templating. En TypeScript, une directive est une classe à laquelle on applique le décorateur @Directive. Il existe deux sortes de directives :

  • Les directives structurelles : Elles ont pour but de modifier le DOM en ajoutant, enlevant ou replaçant un élément du DOM. 
  • Les attribute directives : Elles ont pour but de modifier l’apparence ou le comportement d’un élément.

Les directives structurelles

Je ne vais pas lister toutes les directives structurelles proposées par Angular mais nous allons quand même en étudier une pour l’exemple : ngIf . ngIf permet de supprimer ou de recréer  l’élément courant suivant l’expression passée en paramètre. Si l’expression assignée au ngIf est évaluée à false alors l’élément sera supprimé du DOM, puis l’élément sera recréé si l’expression est évaluée à true. Voici un exemple de template utilisant cette directive :

 

 

Afficher la div sera bien affiché puisque l’expression 1 > 0 vaut bien true. Je vous propose maintenant d’inverser le sens de l’expresssion de sorte que 1 < 0. Dans ce cas, notre div disparait totalement du DOM.

Vous vous posez sans doute la question du symbole astérisque (*) devant notre directive. Les directives structurelles telles que *ngIf, *ngFor et *ngSwitchCase sont toutes encadrées par un component qui se veut très proche de la balise HTML 5