Índice

Introducción

Las directivas son una de las nociones más complejas y más difíciles de dominar, pero ofrecen enormes posibilidades. Definen un conjunto de sintaxis que podrán utilizarse en las vistas para hacerlas dinámicas y, de este modo, compensar el aspecto estático de HTML. El principio de una directiva consiste en asociar a una sintaxis, generalmente un atributo o una etiqueta HTML, un comportamiento definido en la directiva.

Como hemos visto en capítulos anteriores, AngularJS provee por defecto un conjunto de directivas: ngBind, ngRepeat, ngIf, ngClass, etc.

La directiva ngBind permite, por ejemplo, mostrar una propiedad del modelo en la vista. Es responsable de mantener la representación sincronizada con el valor del modelo, utilizando el mecanismo de watch, que permite actualizar la vista cada vez que cambia la propiedad del modelo.

La directiva ngRepeat permite, por su parte, iterar sobre una colección y aplicar un template en la vista por cada elemento de esta colección. Se suscribe a los cambios de la colección para actualizar la vista en función de las modificaciones realizadas.

Es posible, y a menudo imprescindible, crear nuestras propias directivas correspondientes a necesidades del negocio o a restricciones funcionales.

Este capítulo ilustra los métodos de creación de directivas y las diversas posibilidades que ofrecen. A continuación, se explican varios ejemplos de directivas, que responden a distintas necesidades.