Básico 2: Creando mi perfil 👤
En este reto aprendamos sobre directivas. Una directiva se representa como un atributo en una etiqueta HTML; *ngIf, *ngFor o *ngSwitch son algunas y le adiciona un comportamiento definido.
Last updated
En este reto aprendamos sobre directivas. Una directiva se representa como un atributo en una etiqueta HTML; *ngIf, *ngFor o *ngSwitch son algunas y le adiciona un comportamiento definido.
Last updated
¡Qué divertido fue aprender a usar imágenes de gatos! ¡Ahora vayamos por la creación de nuestro propio perfil!
¿Te gustaría crear la base de lo que podría ser tu propio perfil en tu aplicación web? Vamos a crear un perfil, que muestre u oculte información según nuestros propios datos, así podremos personalizarlo ¡Cómo más nos guste! ¡Aquí puedes encontrar el demo!
Entra a www.stackblitz.com, y verás algo como esto:
Vamos a crear el entorno de nuestra aplicación. Para ello iremos al archivo app.component.html y borramos todo el contenido para adicionar lo siguiente:
Deberías hacer algo así, y tu resultado se deberá ver así:👇
Por si tienes alguna duda. Aquí te explicamos cómo funciona: 👷♀️
1. La etiqueta *ngIf es una directiva que incluye una condición basada en el valor de una variable que la contiene. Cuando la expresión se evalúa como verdadera, Angular realiza la visualización de la porción de código, y cuando es falsa o nula, Angular realiza la NO visualización de la porción de código.
Vamos a suponer que deseamos filtrar la información que vamos a mostrar en nuestro perfil. ¿Cómo podremos lograr eso?
Adiciona este código en la línea 8 de tu archivo app.component.html
Deberías hacer algo así, y tu resultado se deberá ver así:👇
Por si tienes alguna duda. Aquí te explicamos cómo funciona: 👷♀️
1. La etiqueta *ngIf también nos permite realizar operaciones lógicas, tanto así, que podemos hacer que una condición haga que se visualice o no los datos. Si el número de following es mayor a 100 podré ver esta información, de lo contrario se ocultarán. Si el número de followers es mayor a 700 podré ver esta información, de lo contrario se ocultarán.
Vamos a suponer que deseamos filtrar la información que vamos a mostrar en nuestro perfil. ¿Cómo podremos lograr eso?
Adiciona este código en la línea 16 de tu archivo app.component.html
Deberías hacer algo así, y tu resultado se deberá ver así:👇
Por si tienes alguna duda. Aquí te explicamos cómo funciona: 👷♀️
1. La etiqueta *ngFor es una directiva principal, nos permite crear listas de datos en nuestro HTML sin adicionar más lineas de código. Todo se genera dinámicamente según el tamaño de la lista de elementos a mostrar.
2. Veremos como se visualizará en pantalla el contenido de strengths sin necesidad de escribir una por una en el archivo app.component.html.
Vamos a hacer que de una lista de opciones solo se nos muestre una.
Para esto vamos a usar la directiva NgSwitch.
Adiciona este código en la línea 20 de tu archivo app.component.html
Deberías hacer algo así, y tu resultado se deberá ver así:👇
Por si tienes alguna duda. Aquí te explicamos cómo funciona: 👷♀️
1. La etiqueta [ngSwitch] es una directiva estructural que agrega o no código (mostrar u ocultar vistas) cuando la condición coincide con la expresión de cambio.
2. Veremos como se visualizará en pantalla el elemento siempre y cuando exista un valor pink expresado en el siguiente código *ngSwitchCase="'pink'".
Ahora vamos a modificar el archivo app.component.ts, en este vamos a adicionar la declaración de variables que vimos en el archivo app.component.html. En este archivo vamos a reemplazar su contenido, por el siguiente código por este:
Deberías hacer algo así, y tu resultado se deberá ver así:👇
Por si tienes alguna duda. Aquí te explicamos cómo funciona: 👷♀️
1. Realizamos la declaración de variables para: name: línea 9 donde le asignamos un valor tipo string. following: línea 10 donde le asignamos un valor tipo entero. followers: línea 11 donde le asignamos un valor tipo entero. strengths: línea 13 donde le asignamos un valor tipo objeto, donde almacenamos la lista de fortalezas a visualizar en el perfil. people: línea 15 donde le asignamos un valor tipo objeto, donde almacenamos la lista de mejores amigos de tu perfil.
¡Vamos a hacer que nuestro perfil tenga color agregando CSS! ¿Recuerdas las clases que usamos en nuestro app.component.html? ¡Llegó el tiempo de usarlas! Reemplaza el contenido de app.component.css con éste:
Deberías hacer algo así, y tu resultado se deberá ver así:👇
Parece que nuestra aplicación está lista excepto por un pequeño detalle 😵. Debería de poder agregar elementos con información como correo electrónico y profesión.
⭐️ Utiliza lo que ya conoces como: data binding, las diferentes directivas y variables para adicionar más campos en nuestra tarjeta y ¡Personaliza con tu foto, datos y colores favoritos!
💪💪¡¡Felicitaciones!! ¡Llegaste muy lejos! 💪💪
Nota:
Si necesitas ayuda con este ejercicio puedes contactar a:
Alejandra Giraldo Twitter: @maleja111 Correo: magiraldodevelop@gmail.com