Intermedio #1: Lista de Tareas 📝
Además de utilizar conocimiento de ejercicios pasados ¡Vamos a usar formularios!
Last updated
Además de utilizar conocimiento de ejercicios pasados ¡Vamos a usar formularios!
Last updated
Ya hemos utilizado funciones muy divertidas de Angular, ahora vamos a utilizar un formulario para crear una pequeña lista de notas ¡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 ver algo así: 👇
Vamos a utilizar un formulario con un campo de texto y 2 botones: un botón adicionará el contenido del campo de texto a la lista y el otro botón limpiará la lista para que no contenga nada.
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 form es una etiqueta de HTML que representa un formulario. En este formulario contiene los diferentes campos y botones que lleguemos a necesitar. 2. La etiqueta (ngSubmit)="save()": ngSubmit es usada para manejar el envío de la información del formulario. save(): es usado para indicar al archivo app.component.ts cual es la función a la que se va a hacer referencia cuando se envíe información del formulario.
3. La etiqueta input:
class: Es usada para manejar estilos.
id: Referencia al elemento.
type: El tipo de dato, en este caso texto.
placeholder: Muestra en el campo de texto un mensaje, antes de que el usuario ingrese un valor.
required y minlength: Se utiliza para realizar validaciones.
ngModel: Creas una instancia a FormControl
donde se domina el modelo y binds hacia el elemento.
name: Nombre del input.
4. El elemento button es un botón, el primero envía información del formulario. Segundo, elimina la lista. El primer label nos va a permitir ver el modelo de nuestra aplicación. El segundo label nos va a permitir ver como la lista se elimina.
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 y además vamos a agregar unas funciones. En este archivo vamos a reemplazar su contenido, por el siguiente código:
Deberías hacer algo así, y tu resultado se deberá ver así:👇
Por si tienes alguna duda. Aquí te explicamos cómo funciona: 👷♀️
1. En la línea 10 y 11, se declaran las variables: model y items. 2. La función save(), línea 17, es la encargada de enviar los datos del formulario a lista. 3. Dentro de la función save(): Línea 18 valida que el input tenga texto. La línea 19 me adiciona un elemento a una lista. La línea 20 me limpia el input. 4. La función clearComplete(), línea 24, es la encargada de eliminar los datos de la lista, es por eso que se limpia la variable.
Ahora vamos a modificar el archivo app.component.html, en este vamos a adicionar el código para ver nuestra lista. Adiciona este código en la línea 26 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. El elemento *ngIf= nos va a ayudar a ocultar o mostrar elementos, depende de la variable que tengamos asignada dentro del ngIf=, en este caso tenemos la siguiente lógica, si la variable items.length (el número de elementos de la lista) es mayor a 0 entonces muestre la lista. 2. *ngFor es una directiva en Angular, nos permite presentar una lista de elementos en pantalla de una forma sencilla. Su sintaxis consiste en inicializar una variable que la podemos llamar item, que será el elemento que nos irá mostrando de la lista items. 3.{{item.text || 'Add some thing'}} Aquí indico si deseo que muestre el mensaje o un mensaje por defecto, si text no llega a tener texto.
¡Vamos a hacer que nuestra lista 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 eliminar un elemento de la lista cuando esta esté terminada.
⭐️ Utiliza lo que ya conoces como: data binding, llamado de funciones y evento clic en botones para lograr este objetivo.
💪💪¡¡Felicitaciones!! ¡Llegaste muy lejos! 💪💪
Nota:
Si necesitas ayuda con este ejercicio puedes contactar a:
Alejandra Giraldo Twitter: @maleja111 Correo: magiraldodevelop@gmail.com