ng-app: A estas alturas ya conocemos esta directiva, se describi en la entrada anterior,
pero no est de ms incluirla en este pequeo recopilatorio. Lo que hace es identificar la
etiqueta HTML que la contiene como aplicacin AngularJS. Es posible asignarle un valor, que ser el nombre de nuestra aplicacin (que no tiene por qu ser el mismo nombre del mdulo). 1 2 <!-- ng-app directive --> <body ng-app="app">
ng-controller: El elemento HTML que contenga esta directiva, tendr como controlador el valor que conste en la directiva. Por ejemplo, imaginemos que un elemento div contiene la directiva ng-controller=mainCtrl; en este caso el controlador mainCtrl hara de manejador de ese elemento.
1 2 3 4 <!-- ng-controller directive --> <div ng-controller="mainCtrl"> <!-- your AngularJS content goes here --> </div>
ng-init: Segn la documentacin de AngularJS, hoy en da, esta directiva slo sirve para aplicar desvos especiales en la directiva ng-repeat. La realidad es que actualmente, esto se puede hacer directamente en la directiva ng-repeat sin necesidad de recurrir a ng- init; luego lo veremos en los ejemplos. Esta directiva tambin nos sirve para inicializar variables directamente en la vista, sin necesidad de que sea el controlador quien las proporcione.
<!-- ng-init directive: object from function --> <div ng-init="init()">
ng-repeat: Esta directiva nos permite iterar a travs de cualquier enumerable directamente en la vista, de lo que se deduce que ese enumerable, o array por ejemplo, debe estar definido en algn lugar, bien utilizando la directiva ng-init, bien incluyendo la variable en el controlador. Esta directiva tambin se puede utilizar de varias formas en funcin de lo que ms nos interese.
Con la directiva ng-repeat podemos extender el template HTML que se repetir con cada iteracin haciendo use de las directivas ng-repeat-start y ng-repeat-end, por ejemplo de la forma que se muestra abajo:
ng-show / ng-hide: Con estas directivas podemos esconder o mostrar un elemento en base a una variable o un mtodo definido previamente. En algunas ocasiones, puede ser interesante utilizar esta directiva. Por ejemplo, si quisiramos mostrar algn elemento slo en las iteraciones pares, podramos definir una funcin en el controlador que nos diga si el ndice del elemento es par o no, y aplicarlo con la directiva ng-show o ng- hide.
ng-class: La directiva ng-class nos permite asignar clases a los elementos HTML de la pgina, pero tambin podemos pasarle valores a travs de variables que contengan bien valores true o false, bienstrings con nombres de las classes.
ng-template / ng-include: Estas dos directivas nos permiten, por un lado definir templates con ng-template y, por otro, hacer uso de esos templates definidos haciendo uso de la directiva ng-include. Como veis abajo, el valor para esta directiva se pone entre comillas simples porque le estamos pasando un string, en lugar de una variable o un id. La directiva ng-include nos va a venir muy bien para formarlayouts con partes dinmicas y partes estticas, y adems de templates o plantillas, acepta tambin rutas a archivos HTML que tengamos en el proyecto..
1 2 3 4 5 6 7 8 9 <!-- ng-template directive --> <!-- $scope.variables = 'variables' --> <script type="text/ng-template" id="partial.html"> <h1>Esto es un template de AngularJS</h1> <p>Haciendo uso de un controlador, tambin podemos incluir {{variables}}</p> </script>
ng-model: La directiva ng-model nos permite asignar el valor de un elemento input, select y/o textareaa una variable definida previamente. Este valor queda automticamente relacionado con el elemento, de tal forma que si la variable cambia, el valor del elemento tambin cambiar y, si cambiamos el valor de la variable en el elemento input, select y/o textarea, cambiar en todo el alcance de la variable.
ng-bind: Con esta directiva hacemos algo parecido a lo que hace ng-model, con la diferencia de que podemos aplicarlo a cualquier elemento HTML y que no podremos cambiar el valor de la variable desde el elemento, sino que el valor del elemento se actualizar cada vez que cambie la variable.
Bien, quera repasar algunas directivas ms, pero la entrada se est alargando demasiado. Ahora vamos a ver qu son, cmo se utilizan y para qu podemos utilizar los filtros de AngularJS.