Muestra las diferencias entre dos versiones de la página.
unidades:06_promesas:04_ejemploseguro [2014/08/25 19:03] admin [El servicio] |
unidades:06_promesas:04_ejemploseguro [2014/09/02 00:23] (actual) admin |
||
---|---|---|---|
Línea 3: | Línea 3: | ||
===== El servicio ===== | ===== El servicio ===== | ||
- | El cambio implica que en los métodos ''get'' y ''list'' ya no se pasan como parámetros las funciones de //callback// sino que ahora se retorna una promesa y desde los controladores se añaden a la promesa las funciones de //callback//. | + | El cambio implica que en los métodos ''get'' y ''list'' ya no se pasen como parámetros las funciones de //callback// sino que ahora se retorna una promesa y desde los controladores se añaden a la promesa las funciones de //callback//. |
- | Veamos como queda la función del servicio. | + | Veamos cómo queda la función del servicio. |
<sxh js;highlight: [1,3,4,10,12,19,20,26,28,32]> | <sxh js;highlight: [1,3,4,10,12,19,20,26,28,32]> | ||
Línea 47: | Línea 47: | ||
* Línea 4: Creamos la promesa que retornará la función. | * Línea 4: Creamos la promesa que retornará la función. | ||
* Línea 10: Ya no llamamos a la función de //callback// de OK sino que resolvemos la promesa. | * Línea 10: Ya no llamamos a la función de //callback// de OK sino que resolvemos la promesa. | ||
- | * Línea 12: Ya no llamamos a la función de //callback// de error sino que rechazamos la promesa. Como solo se permite un único parámetro solo pasamos el ''status'' ya que era lo único que se usaba. | + | * Línea 12: Ya no llamamos a la función de //callback// de error sino que rechazamos la promesa. Como sólo se permite un único parámetro solamente pasamos el ''status'' ya que era lo único que se usaba. |
- | * Líneas 19,20,26 y 28 : Son los mismos cambio pero en vez de en la función ''get'' son el ''list''. | + | * Líneas 19,20,26 y 28 : Son los mismos cambios pero en vez de en la función ''get'' son en el ''list''. |
* Línea 32: Retornamos la promesa. | * Línea 32: Retornamos la promesa. | ||
- | Ahora veamos como se crea el provider | + | Ahora veamos cómo se crea el provider. |
<sxh js;highlight: [6,7]> | <sxh js;highlight: [6,7]> | ||
Línea 67: | Línea 67: | ||
* Línea 7: Al crear el objeto le pasamos también el servicio de ''$q''. | * Línea 7: Al crear el objeto le pasamos también el servicio de ''$q''. | ||
===== Los controladores ===== | ===== Los controladores ===== | ||
- | Ahora modificamos los controladores ''DetalleSeguroController'' y ''ListadoSeguroController'' para que hagan las llamdas al servicio usando las promesas. | + | Ahora modificamos los controladores ''DetalleSeguroController'' y ''ListadoSeguroController'' para que hagan las llamadas al servicio usando las promesas. |
<sxh js; title:Controlador DetalleSeguroController> | <sxh js; title:Controlador DetalleSeguroController> | ||
Línea 85: | Línea 85: | ||
</sxh> | </sxh> | ||
- | El cambio en ambos controladores es solo en las llamadas a ''get'' y ''list'' para que hagan uso del método ''then'' en vez de pasar directamente las funciones de //callback// al llamar a ''get'' y ''list''. | + | El cambio en ambos controladores es sólo en las llamadas a ''get'' y ''list'' para que hagan uso del método ''then'' en vez de pasar directamente las funciones de //callback// al llamar a ''get'' y ''list''. |
===== Ejemplo ===== | ===== Ejemplo ===== | ||
+ | Lo único que hemos modificado es el fichero ''script.js'' con los cambios que hemos indicado. | ||
+ | |||
{{url>http://embed.plnkr.co/OQHvq6}} | {{url>http://embed.plnkr.co/OQHvq6}} | ||
+ | |||
+ | ===== Resumen ===== | ||
+ | Después de ver tantos aspectos de las promesas vemos que crear servicios que usen promesas es muy sencillo y permite que dichos servicios puedan ser usados de formas mucho más complejas gracias a todas las utilidades que ofrecen las promesas. |