Javascript + Angular Sesion 5

613 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
613
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
39
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Javascript + Angular Sesion 5

  1. 1. Directivas Javascript + Angular Sesion 5 Sergio Castillo Yrizales @scyrizales
  2. 2. Agenda 2  Directivas
  3. 3. Directivas 3
  4. 4. ¿Qué es una Directiva? 4  Las directivas es lo que hace diferente a AngularJS  Permiten encapsular funcionalidad en puro html.
  5. 5. Razones para escribir directivas 5  Necesidades especiales  Imaginen poder usar este código para compartir un mismo formulario en cualquier parte de su aplicación
  6. 6. Razones para escribir directivas 6  Encapsular un plugin de otra libreria  La directiva no existe  Las directivas que existen no cumplen con las necesidades.
  7. 7. ¿Como crear Directivas? 7
  8. 8. Valores de las propiedades 8 Propiedad Valor restrict Puede ser A,E,C y M que significan attribute, element, class, o comment scope Cada subpropiedad puede tener cualquiera de estos 3 valores: •@: el valor es de un solo sentido •=: el valor es de dos sentidos •&: guarda una referencia a una función o expresión template La base para escribir el código que usará la directiva replace Boolean que indica si se debe reemplazar el html original por el html generado por el template transclude Indica si se debe preservar el contenido de la declaración de la directiva en el html original, se usa en conjunto con ng-transclude controller La controladora que se usara para darle ambito al template, no siempre es necesario
  9. 9. Valores de las propiedades 9 Propiedad Valor requires Indica si una directiva depende de otra link Función que realiza la configuración inicial de la directiva. Recibe cuatro parametros: function link(scope, iElement, iAttrs, controller) •scope: indica el objeto creado por la propiedad scope. •iElement: se refiere al objeto base de la controladora. Este vienen encapsulado en jqLite o Jquery (si es que se incluyo en el proyecto) •iAttrs: los atributos que se asignaron al html original de la directiva declarada •Controller: el controller de la directiva padre. Solo cuando se ha establecido la propiedad requires
  10. 10. Jerarquía de scopes 10  Al usar directivas, se crean nuevos scopes, o se heredan los scopes padres.  Si al definir la directiva, no se usa la propiedad scope, la directiva crea un nuevo scope que hereda todas las propiedades del scope de la controladora que contiene a la directiva.  Al momento de usar la propiedad scope, se pierde toda conexión con el scope padre, y se genera un scope independiente para la directiva.
  11. 11. Usando $watch 11  El método $watch (forma parte del scope) sirve para verificar cambios en alguna propiedad del scope.  La sintaxis es:  $scope.$watch(‘propiedad’, function(value){ });  La funcion suscrita es la forma de realizar los cambios necesarios ante un cambio en la propiedad suscrita  Se puede usar para verificar cambios en propiedades de la controladora padre inclusive.
  12. 12. Ejemplos (Directiva Simple) 12  Hagamos una calculadora  http://jsfiddle.net/scyrizales/mUJhL/
  13. 13. Ejemplos (Directiva Simple) 13  Hagamos un time formatter  http://jsfiddle.net/scyrizales/rUbsE/
  14. 14. Ejemplos (Directiva Anidada) 14  Hagamos un tab panel  http://jsfiddle.net/scyrizales/6C6Mv/
  15. 15. Modifiquemos el carrito 15  Agreguemosle el tab al carrito  http://jsfiddle.net/scyrizales/hRDQj/
  16. 16. Muchas gracias Y que esta luz os ilumine donde las otras no puedan… 16

×