Crea tu Componente en ANGULAR JS ! (Nivel Basico)


Componentes de Angular JS


Estas harto de rescribir código tanto html como js en cada uno de tus archivos, 

Hoy te presento el inicio a el cambio básico para mejorar tu aplicación, ademas de encaminar-la para futuras actualizaciones como Angular 6.

Conceptos básicos

Un componente es básicamente la funcionalidad aplicada a la reutilización de funcionalidades de tu aplicación en toda ella.

Imaginémonos que tenemos algo básico, queremos hacer un listado de items, y queremos utilizar este listado para mostrar ciertos objetos en el Home, en el listado de usuario y en el de ventas. Gracias al componente crearemos un único Template el cual se adaptara a cada una de las situaciones.

Formemos nuestro primer controlador

Ahora vamos a crear este ejemplo que hemos presentado.

Para este componente usaremos un archivo html " compList.component.js  " y su template " compList.template.html ".

Empezaremos por declarar nuestro componente :

class compListCtrl {
constructor(AppConstants, $scope) {
'ngInject';
}
}



let compList = {
controller: compListCtrl,
templateUrl: 'compList/compList.tmp.html',
bindings:{
arrayObjetos: "="
}

};

export default compList;

Aquí podemos ver como hemos declarado el componente compList como un objeto nuevo y le hemos añadido el controlador, su template y un binding el cual lo hemos llamado arrayObjetos.

Aqui tenemos 3 conceptos. 

Controlador, es el que se encargara de la gestión del DOM del nuestro vista.
TemplateUrl, es la dirección de nuestro template, básicamente declaramos su dirección.
Bindings, este objeto se trata de todos aquellos datos que queramos darle a nuestra template, pueden ser cualquier tipo. Para más información click aqui

A este le hemos dicho que le pasaremos el arrayObjetos, el cual lo usaremos como el nombre indica para darle el array de objetos que usaremos para crear nuestro listado de objetos.

Ahora es el momento de el template :

<div ng-repeat="item in $ctrl.arrayObjetos">
{{item.nombre}}
</div>

Este es un ejemplo basico, el template se compondra de un ng-repeat, que en terminos rapidos hara la funcion de un forEach.

El cual como vemos le hemos declarado "item in $ctrl.arrayObjetos" que como recordamos arrayObjetos es el binding que le hemos indicado al componente que le enviaremos como dato.

Este pintara los nombres de cada uno de los objetos que le pasemos.

AUN NO LO TENEMOS TODO

Claro ahora ya tenemos el componente declarado con su template y digamos que ya tiene funcionalidad, pero ? Como lo llamamos para que se implemente...
Para llamar a un componente es tan facil como declarar en el html su nombre seguido con un guión, ademas de poder asignarle como un atributo el binding que le hemos puesto :


<comp-list array-objetos="$ctrl.arrayObjetos"></comp-list>

A partir de este punto ya habriamos creado nuestro primer componente básico.



Entradas populares de este blog

Git en Repositorios Externos

Aprende GIT en lo que yo me aburro escribiendolo

Desplegar Django en Apache2