formations/javascript/angular/creation-directives-4.md

919 B

.cadoles-slide-title[Création de directives (4/4)]

  • Une directive, contrairement à un simple contrôleur peut manipuler le DOM via sa méthode link().
<script>
  angular.module('myApp', [])
    .directive('myDirective', function() {
      return {
        restrict: 'E',
        link: function(scope, element, attrs) {

          // scope: $scope de notre directive
          // element: référence vers l'élément du DOM portant la directive (via wrapper jqLite)
          // attrs: objet clé/valeur portant les attributs normalisés de l'élément du DOM

          element.text('Hello word !');

          // L'évènement $destroy émit par le scope permet
          // d'être notifié de la suppression de la directive
          scope.$on('$destroy', function() {
            // Faire quelque chose à la destruction de la directive
          });

        }
      };

    })
  ;
</script>