AngularJS: Uso de directiva $q para promesas

Que tal, hoy vengo a compartirles un pequeño ejemplo muy practico donde les mostraré como usar el uso de la directiva $q de AngularJS para el uso de promesas que nos ayudarán a que nuestro código se ejecuto sincrono.

Nuestro ejemplo consiste en tener dos servicios rest de tipo get donde en el callback nos retornaran la información tipo JSON, estás dos peticiones están dentro de un factory de AngularJS para tenerlo más organizado , y este mismo factory lo invocaremos en nuestro controlador.

Dentro de nuestro controlador inyectamos la directiva $q para trabajar con promesas, generando un array metiendo nuestros métodos que invocan los servicios REST y por medio de la directiva $q y sus métodos harán que nuestros métodos se ejecuten sincronos y nos regresen algún dato en su callback.

Dentro de nuestro index.html, tenemos a simple vista dos listas para mostrar los resultados se lo que nos retorne nuestros servicios REST.

services.js – Como lo comenté anteriormente creamos un factory donde meteremos nuestras dos peticiones REST.

controllerPrincipal.js – Por lo regular en mis controladores suelo introducir un método llamado onInit() que es donde meto el código a ejecutarse primero,  dentro del método tenemos un array donde introducimos los métodos a ejecutarse sincronos, y tenemos la directiva $q invocando al método all pasando como parámetro el array con los métodos.

Lo importante de este método es que nos retornara dentro del then en una función anónima el callback de cada promise en tipo array.

listaAlumnosJSON.json

listaMaestrosJSON.json

Para concluir : AngularJS nos provee está magnifica directiva para facilitarnos el uso de promesas incluso tiene más métodos interesantes, existen otras formas de ejecutar nuestro código sincrono sin necesidad de usar la directiva $q , en este ejemplo lo puedes ver. 

 

 


Leave a Reply

Your email address will not be published. Required fields are marked *

*