Subido por Elmer John Perez Espinoza

Capitulo2

Anuncio
Angular 12
Diseño de componentes y
directivas
Directivas
⮚ Se utilizan para manipular el DOM.
⮚ Mediante el uso de directivas angulares, puede cambiar la apariencia, el
comportamiento o el diseño de un elemento DOM.
⮚ También te ayuda a extender HTML.
Directivas Estructurales
⮚ Algunas de las directivas estructurales comienzan con un signo *.
⮚ Estas directivas se utilizan para manipular y cambiar la estructura de los elementos
DOM, por ejemplo
⮚ *ngIf
⮚ *ngFor
⮚ ng-template
⮚ ngSwitch / *ngSwitchCase
Directivas de Atributos
⮚ Las directivas de atributos se utilizan para cambiar el aspecto y el comportamiento de
los elementos DOM. Por ejemplo
⮚ ngStyle
⮚ ngClass
Componentes
⮚ Un componente se basa en la creación de fragmentos con vista, estilos y controladores de forma
que puedan ser reutilizadas en distintas partes de la web
⮚ La vista (html) y los estilos (css), definen qué y cómo queremos representar la web. En los
controladores se encuentra la lógica de los componentes. Desde este archivo podemos inicializar
las variables para la vista, actualizarlos, llamar a otros archivos, crear funciones, etc.
⮚ Ej. Una estructura de componentes con componentes padres e hijos puede ser la
siguiente:
app
home
title
Book
BookList
BooksDetail
Componentes
@Component
⮚ Un Template, es un HTML que indica la estructura visual.
⮚ Un Class, formada a su vez por Properties y Methods, atributos y funciones que definen
el comportamiento de la clase.
⮚ Una Metadata, que sirve para indicar un nombre mediante el cual referenciar al
componente desde nuestro HTML.
Estructura de un Componente
Importamos ‘Component’ de @angular/core, y se llama a @Component y le pasamos tres cosas (de
momento):
⮚ Selector: El selector es el nombre que va a tener la
etiqueta html que se crea con el componente, es decir
desde el html de cualquier otro componente, poniendo
esa etiqueta se pintará el componente.
⮚ Angular tiene una convención de nombre para el
selector, kebab-case (el nombre de los selectores tiene
que ser una palabra seguida de un guión y otra palabra:
app-ejemplo).
⮚ TemplateUrl: La url
componente.
de la vista html
asociada al
⮚ StyleUrl: La url del estilo CSS asociado al componente.
Por último hacemos export class y el nombre de la clase.
Comunicar componentes acoplados
La comunicación de componentes es una característica muy
importante dentro de una aplicación web. Hay aplicaciones en los
cuales es necesario que un componente padre envié información hacia
un componente hijo para que este pueda mostrar la información con
más detalle. También tenemos casos donde un componente hijo
necesita enviar información a un componente padre. Los casos de uso
de la comunicación entre componentes pueden ser innumerables, así
que es necesario estudiarlo y comprenderlos para poder construir
aplicaciones realmente potentes. A continuación explicaremos estos
dos tipos de comunicación que mencionamos.
@Input
@Output
EventEmitter
De componente padre a hijo
Dentro de nuestro componente hijo necesitamos una librería llamada Input que nos permitirá utilizar
un decorator mediante el cual declararemos las variable donde recibiremos los datos enviados por
el componente padre.
De componente hijo a padre
Para esto dentro de nuestro componente hijo utilizaremos dos librerías de Angular Output y
EventEmitter. El mensaje será enviado a forma de evento emitido por el componente hijo. En el
componente hijo usamos el siguiente código que pasamos a explicar a continuación.
Principio de responsabilidad unica - unica
funcionalidad
Smart Components - por comportamiento
- componentes de página
- ionic -> home.page.ts
- homePage.component.ts
- home.page.ts → angular 10
- componentes fetch (listado/contenedor/smart)
- books.component.ts
- bookList.component.ts
- bookFetch.component.ts
- bookContainer.component.ts
- componente de renderizado (detalle)
- book.component.ts
- bookDetail.component.ts
- bookMin.component.ts
total reservados: 20
Libro 1 - 4
libro 2 - 16
nombre del
autor
Autor
reservar
título
Autor
reservar
título
Autor
reservar
título
Autor
AppComponent
AppModule
page/homePage
reservar
AppRouting
datasource
components/bookListExample
components/bookSelectCont
components/bookExample
Interface
localhost:4200/map
componente ubigeo
título dinámico
modules/maps
MapRouter
pages/home.page.ts
Árbol temático
MapContainer
google map
1.
2.
3.
elegir distrito cambiar
el zoom mapa en un
punto del distrito
detectar el ubigeo eligodo
extraer el punto de un api rest
enviar los datos para que pinte el mapa en un zoom
MapRender
localhost:4200/report
componente ubigeo
título dinámico
modules/reposrt
pages/home.page.ts
Árbol temático
ReportContainer
ReportContainer
Table
ReportRouter
Qué son los Pipes
⮚ Las pipes son filtros o funciones que
pones directamente en la vista para el
dar formato a un dato que estés
pintando.
⮚ Los pipes nos permiten transformar
visualmente nuestros datos, de esta
manera podemos mostrar datos con
una mejor experiencia de usuario,
⮚ Un ejemplo muy practico es el de la
fecha, seguramente la mayoría de
nosotros prefiere ver un formato de
fecha como:
“23 años Comprometidos con la capacitación de
profesionales en el Perú”
Descargar