Intermedio #2: Crea un formulario de contacto ✉️
En este ejercicio nos vamos a divertir aprendiendo sobre Formularios de tipo Template-driven en Angular.io 📝
Last updated
Was this helpful?
En este ejercicio nos vamos a divertir aprendiendo sobre Formularios de tipo Template-driven en Angular.io 📝
Last updated
Was this helpful?
En este desafío vamos a mostrar de forma muy creativa datos que tú mismo vas a ingresar en un formulario de contacto, la cual es una funcionalidad básica de las páginas web. 📬
Entra a , y verás algo como esto:
Vamos a adicionar la estructura básica que va a tener nuestro formulario para que tengamos mucho mas claro como vamos a visualizar nuestros datos. Reemplazaremos el contenido del archivo app.component.html y adicionaremos lo siguiente:
Deberías hacer algo así, y tu resultado se deberá ver así:👇
Vamos a hacer algo diferente esta vez, siempre dejamos la estructura CSS para el final, pero en esta ocasión vamos a dejarla lista y nos enfocaremos en la lógica de nuestro formulario de contacto. Reemplazaremos el contenido del archivo styles.css y adicionaremos lo siguiente:
Deberías hacer algo así, y tu resultado se deberá ver así:👇
Ya tienes la estructura básica, hora nos concentraremos en la creación de un formulario, este formulario tendrá 3 campos, un campo para ingresar tu nombre, otro para ingresar tu correo electrónico y un campo para ingresar un mensaje.
Adicionaremos el siguiente contenido reemplazando la línea de comentario <!-- TODO: Aquí adicionaremos nuestro formulario -->
en el archivo app.component.html.
Deberías hacer algo así, y tu resultado se deberá ver así cuando pases el mouse sobre la aplicación:👇
En el paso 4 explicaremos:
Ya aprendiste a hacer un formulario 🎉, ahora vamos a comprender cómo ver esa información.
Adicionaremos el siguiente contenido reemplazando la línea de comentario <!-- TODO: Aquí adicionaremos el resultado de los datos que ingresemos al formulario -->
en el archivo app.component.html.
Deberías hacer algo así, y tu resultado se deberá ver así:👇
🎉 ¡LO LOGRASTE! 🎉
Con lo que aprendiste en el ejercicio de hoy, crea un nuevo botón que te permita llenar la información en el formulario con solo un clic, (aquí un pastelito),:
Deberás tener 3 variables, una name, otra email y otra message.
Deberás crear una función que responda al evento del botón llenando los valores de las variables.
Esta adición es para retar tu curiosidad, podrías proponer la solución que tú quieras.
Has completado Crea un formulario de contacto ✉️ ahora vamos para nuestro siguiente desafío 👇
Por si tienes alguna duda. Aquí te explicamos cómo funciona: 👷♀️
1. En Angular.io existen 2 tipos de Formularios y , en esta oportunidad trabajaremos con los formularios tipo . su diferencia radica en el tipo de aplicaciones que necesites crear, para formularios simples y sin lógica personalizadas, esta es tu mejor opción, cuando necesitas validaciones personalizadas o creación de campos que aparezcan dinámicamente es tu mejor opción.
2. En nuestro código HTML tenemos una nueva etiquetaform
que contendrá nuestro .
3. En nuestro código HTML tenemoscontactForm="ngForm"
, que es la referencia a nuestro formulario, en Angular se llama Template reference, y básicamente nos ayuda a potenciar una simple etiqueta HTML form
con todo el poder que tienen Angular para ofrecernos. el NgForm
le da propiedades como validación o poner el campo como requerido y muchísimas más funcionalidades con lógica sin necesidad de tanto código.
4. En nuestro código HTML tenemos (ngSubmit)="onSubmit(contactForm.value):
Con él(ngSubmit)
estamos usando un evento para hacer acceder a nuestra función onSubmit()
que va a contener la información de los valores contactForm.value
que son nuestros datos del formulario en el momento que le demos click a el botón de guardar los datos del formulario. (aun que no los estemos guardando en ninguna base de datos realmente)
5. En nuestro código HTML tenemos una nueva etiqueta input
esta etiqueta nos ayudara a ingresar información a nuestro formulario, en nuestro caso, los campos name y email tienen la etiqueta que nos permitirá tener control sobre la información ingresada.
6. En nuestro código HTML tenemos una nueva etiqueta textarea
esta etiqueta nos ayuda ingresando información a nuestro formulario que podría ser de más de una línea, se usa generalmente para párrafos. Nosotros lo usamos para el campo message .
7. En nuestro código HTML tenemos una nueva etiqueta required
esta etiqueta es lógica de los formularios de Angular.io tipo template-driven, al incluir esta etiqueta le estamos diciendo a angular que ese campo es un campo requerido y que lo necesitamos lleno para el correcto envío de información cuando presionemos el botón guardar.
8. En nuestro código HTML tenemos una nueva etiqueta placeholder
será la encargada de poner un texto dentro del campo (input, o textarea) cuando este vacío, se usa para especificar una pista breve que describe el valor que esperamos que ingrese el usuario.
9. En nuestro código HTML tenemos una nueva etiqueta button
que define un botón en el que se puede hacer clic.
Podemos ver todas las ventajas que tiene y vamos a ver las pocas lineas de código que vamos a necesitar para guardar nuestros datos. Copiaremos lo siguiente en el archivo app.component.ts.
puedes encontrar el ejercicio resuelto.