Entradas

Mostrando entradas de marzo, 2015

AngularJS - Introducción: Servicios

La idea de AngularJS es mantener los controladores para el enlace de datos y reducir su carga lógica, es decir, AngularJS pretende separar responsabilidades . Por lo tanto, los encargados de tareas comunes y de la mayor parte de nuestra lógica de negocio con los datos serán los servicios. Formalmente, los servicios son objetos singleton que realizan tareas comunes a varias partes del sistema. Esto se puede ver fácilmente con un ejemplo. Necesitamos obtener información mediante una petición HTTP. La petición podría realizarse desde el controlador, sin embargo, esto consigue un código excesivamente acoplado y sin ninguna separación entre responsabilidades. Si la petición HTTP la sacamos del controlador y la encapsulamos en un servicio habremos conseguido separar las responsabilidades. Es más, si deseamos realizar la misma petición desde otro lugar de la aplicación simplemente debemos utilizar el servicio que hemos creado. En el siguiente ejemplo se puede ver un servicio que e

AngularJS - Introducción: Controladores

Imagen
¿Qué es un controlador? AngularJS emplea el concepto de controladores como el elemento que define la funcionalidad de una parte de la página . Como aproximación se puede decir que un controlador responde a las acciones sobre una interfaz de usuario, lo que permitirá modificar la salida final por pantalla.  Desde el controlador modificaremos el modelo de datos y gracias al enlace de datos que realiza AngularJS la interfaz de usuario se actualizará para responder al cambio del modelo. Es decir, el controlador utilizará el ámbito ( Ver ámbitos ) correspondiente para modificar los datos y de esta forma dar funcionalidad a la parte  de la página a la que afecte el controlador. Lo explicado se puede ver de forma más clara en el siguiente ejemplo: En un controlador se define la variable* "nombre" en el ámbito con un valor inicial y además se define una función que vacía el contenido de la variable "nombre". Desde el HTML se utiliza la variable del ámb

AngularJS - Introducción: Ámbitos (Scopes)

Imagen
El concepto de los ámbitos es muy importante y se deben entender para el empleo de AngularJS. La importancia de este concepto radica en qué los  ámbitos son   utilizados por el framework para comunicar controladores y vistas. Es decir, que los ámbitos son el componente que utilizamos para relacionar nuestros datos con las vistas, por tanto deberemos asignar los datos deseados a un ámbito para que este lo lleve a la interfaz. En un ámbito podemos declarar variables* para que estás sean accesibles desde la vista. Es decir, que desde un controlador podremos utilizar las variables del ámbito para establecer los datos que se envían a la parte de la página asociada al controlador. Para el acceso a los ámbitos desde el código se utiliza el objeto  $scope (este objeto representa un ámbito). AngularJS no posee un sólo ámbito, si no que por cada uno de los controladores se crea un nuevo ámbito** . Además los ámbitos están jerarquizados por lo que al anidar un controlador o varios de