# 13.1 - AngularMaterial

[https://material.angular.io/](https://material.angular.io/)

Por lo tanto seria como u&#x6E;_**AngularMaterialSeed**_

ng new probando-material

![](https://cdn-images-1.medium.com/max/1600/1*yEZd6Vi3hn8wNgtVFCVhlg.png)

`npm install --save @angular/material`

![](https://cdn-images-1.medium.com/max/1600/1*vVOoLJiwtNg_fy2xaQ0UyQ.png)

`npm install --save hammerjs`

![](https://cdn-images-1.medium.com/max/1600/1*gUVtybsMxXQLDQ3IJPEHig.png)

`npm install --save-dev @types/hammerjs`

Ahora si, tenemos las dependencias que necesitamos por lo tanto vamos a empezar a probar todo en el componente principal … Si, claro, vamos a probar lo que nos trae material y ponerlo todo en un solo componente, para que puedan ver que trae cada cosa y como utilizarla :D !

## Arrancamos a codear <a href="#id-0717" id="id-0717"></a>

Lo primero que vamos a hacer, ahora que ya tenemos la dependencia, vamos a agregar el modulo

Ahora si, una vez importado el modulo y con la referencia de hammer y icon de material, el beneficio que tenemos con el autocomplete es que ya nos van a aparecer los componentes de material.

![](https://cdn-images-1.medium.com/max/1600/1*4hc06gXP5o9bqSX6yoH6QQ.png)

Uno de los grandes principios de material design, son las “cards”, estos componentes lo que tienen es la idea de centralizar todo el contenido que queremos mostrar sobre eso… por ejemplo, mostrar un titulo con contenido… pensemos que es un div con formato mas fijo…

![](https://cdn-images-1.medium.com/max/1600/1*lmycnlSS2UWJPfHkVYN78w.png)

### CheckBox <a href="#ecdf" id="ecdf"></a>

![](https://cdn-images-1.medium.com/max/1600/1*rntJpncV84WteJaNiKluBA.png)

Como todo lo parece es bastante fácil de aprender… la verdad que seria todo mas que nada un copy and paste… pero vamos a la realidad…

### Que es lo que necesitamos entender para poder trabajar mejor con AngularMaterial => <a href="#e213" id="e213"></a>

> Cada uno de los nuevos tags que ponemos es un componente… por lo tanto seguimos con la vida de componentes creada por angular… Algunos de estos componentes tienen inputs y outputs y los vamos a tener que utilizar… tal y como esta en el ejemplo de arriba… md-checkbox tiene de entrada checked align disable… y esto los podemos manejar obviamente desde nuestro componente…

Sigamos un poco con el tema de los componentes…

En el seed van a ver que hay algunos importados… pero creo que una parte muy importante es entender la grilla que se creo para esto… ya que es un componente del tipo **Grid List**

Como funciona

Este grid en este caso es dinámico … y cada uno de los inputs se referencia al titles que esta creado… como queda =>

![](https://cdn-images-1.medium.com/max/1600/1*PwRxKmahUU8PtZldsFvIvQ.png)

Para entender un poco mejor … pongamos el código como si no iterara..

en**md-grid-list**vamos a indicar la cantidad de columnas y el height de cada row …

en**md-grid-tile** , nuestro iterado, vamos a poner la cantidad de columnas y filas que va a ocupar el nuestro “div” y luego simplemente le damos un color y ponemos texto adentro… mas allá del texto podríamos poner cualquier cosa ahi adentro.. como una card por ejemplo…

Y por ultimo vamos a ver como armar una card simple… para ver el funcionamiento de las mismas…

![](https://cdn-images-1.medium.com/max/1600/1*H3_9o1-9KsiU2hXdl5iRkQ.png)

Exactamente tenemos una seria de componentes que generan la card… pero es bastante simple como pueden ver… un contenedor, un header , una imagen, el contenido y por ultimo los botones tal y como los queremos… y gracias al theme que pusimos queda todo de un color adecuado..

Por lo tanto utilizar AngularMaterial es super facil de usar… simplemente hay que sentarse a mirar como funciona los componentes o copiar y pegar para arrancar a utilizarlos y cambiar el contenido.. al estar dentro de angular como componentes podemos utilizar los inputs para poder darle mas funcionalidad … y esto nos genera tener algo completo…

Para los developers (como yo) que no son muy buenos con el tema del diseño o la combinación de colores, con esto vamos a olvidarnos… y tampoco nos tenemos que poner a agregar cosas de terceros que podrían hacer perder tiempo… simplemente importamos y empezamos a utilizar…

El ejemplo de todo esto esta en : [https://github.com/jorgeucano/probando-angular-material](https://github.com/jorgeucano/probando-angular-material)
