Curso de choque angular - aplicación de tareas construida | Stefan Omerovic | Skillshare

Velocidad de reproducción


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Curso de choque angular - aplicación de tareas construida

teacher avatar Stefan Omerovic, Full Stack Web Developer and Instructor

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Lecciones en esta clase

    • 1.

      Introducción

      2:05

    • 2.

      Instalación angular

      6:55

    • 3.

      Qué es Angular

      11:35

    • 4.

      Módulos

      3:52

    • 5.

      Componentes

      8:39

    • 6.

      Enrutar

      7:50

    • 7.

      servicios

      7:14

    • 8.

      HTTP

      13:47

    • 9.

      Plantilla

      7:27

    • 10.

      Aplicar estilo

      5:44

    • 11.

      Implementación

      12:45

    • 12.

      Gracias y adiós

      2:02

  • --
  • Nivel principiante
  • Nivel intermedio
  • Nivel avanzado
  • Todos los niveles

Generado por la comunidad

El nivel se determina según la opinión de la mayoría de los estudiantes que han dejado reseñas en esta clase. La recomendación del profesor o de la profesora se muestra hasta que se recopilen al menos 5 reseñas de estudiantes.

122

Estudiantes

1

Proyectos

Acerca de esta clase

Bienvenido al curso de choque angular para principiantes absolutos.

Angular es uno de los marcos de JavaScript más populares. Se usa para crear aplicaciones de una sola página en todas las plataformas. Junto a eso, se encarga de la actuación y ofrece herramientas increíbles para nosotros desarrolladores. Es amado por muchos, y es uno de los marcos más populares que hay, junto a React y Vue.

La buena parte de este curso es que no necesitarás ninguna experiencia previa con esta tecnología. Dado que este es un curso de choque, se centrará en los conceptos básicos de las características más importantes que Angular tiene para ofrecer. Y al final de esta clase, crearás e will la aplicación de tareas con Angular.

Desglose de la clase:

  1. Introducción: Además de darte la bienvenida a este curso, también voy a mencionar y mostrar lo que vas a hacer en este curso. Lo que vas a aprender y lo que vamos a construir juntos.
  2. Instalación angular: en esta conferencia, nos centraremos en instalar Angular como tecnología. Junto a eso, vamos a crear nuestra aplicación de tareas y ejecutarla localmente.
  3. Qué es Angular: vamos a usar esta clase para pasar por Angular como tecnología y comprobar cómo se configura la aplicación Angular.
  4. Módulos: Como una de las características principales de Angular, los módulos son realmente importantes para nosotros. Aprenderás más sobre esos e incluso crearás un módulo que vamos a usar para nuestra aplicación de tareas.
  5. Componentes: Sin componentes, no podemos tener ningún contenido en nuestra página. Así que en esta conferencia, vamos a sumergirnos en los componentes, crear, diseñar y usar uno en nuestra aplicación.
  6. Enrutación: Enrutar es algo que ya se integra en aplicaciones angulares. En esta conferencia, vamos a crear más componentes para nuestras páginas y conectar esas páginas para trabajar con nuestro enrutamiento, para que podamos mejorar nuestra aplicación de tareas.
  7. Servicios: función inyectable y la característica que principalmente contiene datos en aplicaciones angulares es un servicio. En esta conferencia, vamos a aprender más sobre ellos, crear uno y compartir datos de un servicio a una de nuestras páginas.
  8. HTTP: Como característica común de cada aplicación web, HTTP en Angular tiene su propio módulo. Vamos a usar ese módulo para contactar con un servidor y sacar los datos reales de él. Junto a eso, vamos a conectar eso a nuestra aplicación para que nuestra aplicación pueda saber esos datos.
  9. Plantilla Los datos que obtuvimos en la próxima clase se usarán en esta conferencia, ya que vamos a presentar los en una pantalla. Vamos a usar algo llamado ngFor directiva para presentar todos los datos en solo unas pocas líneas de código.
  10. Estilo: el estilo en Angular se puede hacer de manera diferente. Todos esos ejemplos vamos a ver en esta conferencia. También vamos a usar la unión de la propiedad para diseñar los elementos específicos basados en valores específicos.
  11. Despliego: En este punto, debemos tener nuestra aplicación de tareas completamente funcional, para que podamos implementarla. Vamos a tomar nuestra aplicación de tareas e implementarla en Firebase Hosting. Todo el procedimiento se explicará paso a paso.
  12. Gracias y adiós: en esta clase recibirás un mensaje de agradecimiento adecuado y junto a eso aprenderás más sobre mí y mis otros cursos que tengo.

Enlaces útiles:
- Angular
- Firebase
- API de marcadores de posición

Conoce a tu profesor(a)

Teacher Profile Image

Stefan Omerovic

Full Stack Web Developer and Instructor

Profesor(a)

Started at age of 18, at the usual starting point for Front End. For the first 2 years mostly coded static websites with Front End Frameworks like Bootstrap. After that, explored the next point on my path to becoming a Full Stack Developer and entered into Web App Development. Started openly coding in Angular and handling everything regarding the Front End Side of multiple projects. Currently, I am a MEAN Stack Developer with 7 years of experience.

Started my way as a Self-Taught Developer, I never stopped learning new Web Development Technologies and I plan to learn and become even better with those. Through a few more years I plan to move into Mobile Development with Flutter.

Experience as Instructor

The reason why I got into teaching Web Development was... Ver perfil completo

Habilidades relacionadas

Desarrollo Herramientas de desarrollo Angular
Level: Beginner

Valoración de la clase

¿Se cumplieron las expectativas?
    ¡Superadas!
  • 0%
  • 0%
  • Un poco
  • 0%
  • No realmente
  • 0%

¿Por qué unirse a Skillshare?

Mira las galardonadas Skillshare Originals

Cada clase tiene lecciones cortas y proyectos prácticos

Tu membresía apoya a los profesores de Skillshare

Aprende desde cualquier lugar

Ve clases sobre la marcha con la aplicación de Skillshare. Progresa en línea o descarga las clases para verlas en el avión, el metro o donde sea que aprendas mejor.

Transcripciones

1. Introducción: Hola a todos y bienvenidos a este curso de choque angular aquí en Skillshare. A través de este curso, trabajaremos con Angular y el sólido básico. Al lado de eso, conocerás todas las características principales que Angular tiene y soporta. Entonces por eso, en realidad instalarás el angular y construirás algo agradable variado. Las características con las que trabajaremos para estas puntuaciones serían angulares, CLI, componentes, servicios y enrutamiento, también módulo http y mucho, mucho más. Ahora bien, ¿qué vamos a construir a través de estas puntuaciones? Bueno, este curso junto a las características que vamos a explorar, también construiremos un proyecto de la vida real. El proyecto que vamos a construir la aplicación de tareas, esta aplicación que se puede ver aquí mismo en la pantalla, parece bastante simple, pero en realidad es compatible con todas las características principales que vamos a un lote de diseño retenido con también hacer el enrutamiento para varias páginas. También usaremos el módulo HTTP para sacar los datos del servidor y realmente mostrar esos datos en una pantalla. Junto a eso, trabajaremos con nuestros datos como completa o incompleta una de nuestras tareas. Ahora, ¿quién soy? Bueno, mi nombre es Stefano materia, que y escucho más de siete años de experiencia en desarrollo web. Al lado de eso, también soy instructor en línea. Al lado de este curso de Skillshare, también me puedes encontrar en YouTube. En YouTube, puedes encontrar mi canal América donde publico nuevos tutoriales en desarrollo web semanalmente. Así que asegúrate de comprobarlo y también suscribirte a mi canal ahí también. Ahora en Skillshare, junto a este curso, puedes encontrar en muchos otros cursos que tengo también. Esos cursos que podrás encontrar serán sobre diferentes tecnologías. Entonces hay otro curso sobre Angular, pero si te gustaría ver los cursos para diferentes tecnologías como Bootstrap, JS, JavaScript. Los puedes encontrar también. Ahora, quiero darle la bienvenida una vez más a este curso. Así que vamos a codificar. 2. Instalación angular: Hola una vez más y bienvenidos a la primera lección oficial de este curso. En esta primera lección, vamos a repasar algunos conceptos básicos de Angular. Instalaremos el Angular. Veremos qué es la herramienta de terminal angular y además crearemos nuestra aplicación y ejecutaremos esa aplicación. En la siguiente lección, hablaremos ¿en qué se encuentra Angular exactamente? Y pasaremos por algunas de las características geniales que tiene Angular. Justo aquí en mi pantalla, actualmente estás mirando sitio web oficial de Angular y una gran cantidad de datos IO. En este sitio web puedes encontrar todo lo que necesites sobre Angular, puedes ver algunas de las características geniales que singulares, Sí. Y también se puede ver su propia documentación completa. Las tecnologías de riesgo angular son una tecnología vasta, por lo que es natural que la documentación también sea grande. En el menú del lado izquierdo aquí, podemos dar click en este Getting Started y dar click en esta configuración, abrir esta página y desplazarnos un poco hacia abajo. Aquí lo primero que podemos ver y hacer es instalar el CLI Angular. Al instalar este singular CLI, también instalaremos la última versión angular estable. Este CLI es realmente importante. Lo usaremos para crear nuestra aplicación. También lo usaremos para crear un montón de características diferentes que Angular soporta. Y también lo usaremos para ejecutar nuestra aplicación. Ahora para instalar la CLI Angular y Angular, debemos copiar este npm instalar dash g en CLI de barra angular. Una cosa más antes de instalar angular, asegúrate también de tener instalada la última versión de node.js. Bien última versión recomendada. La importancia de este nodo no está en Angular, sino en su propia herramienta llamada npm. Npm es el gestor de paquetes que nos permitirá instalar un montón de diferentes módulos como angular. Y en Angular script, ya se puede ver NPM aquí, lo que significa que ya estamos utilizando en eso y PM. Entonces una vez que tengas Node.js instalado , también instalará este NPM automáticamente. En ese punto, puedes simplemente copiar este comando aquí. Ahora en tu terminal, puedes pegar este comando y golpear enter. Este comando instalará automáticamente Angular y Angular CLI para nosotros globalmente en nuestra máquina para que podamos usarla. Una vez instalado esto, podemos usar EMG como comando aquí. Y g viene de esa CLI Angular. Al lado de estos enviar g, usaré dash, dash, help, una bandera aquí para presentar toda la ayuda mientras funciona helper de Angular para nosotros. Aquí podemos ver montón de diferentes opciones y comandos que podemos hacer. Por ejemplo, la factura de energía realmente construirá nuestro proyecto y la reimplementación puede implementar nuestro proyecto. Hay comandos para generador para generar archivos específicos y también ejecutar para ejecutar realmente o servir nuestro proyecto también. Ahora bien esta de aquí es esa herramienta CLI Angular que ya mencioné. La herramienta en sí es muy importante para nosotros los desarrolladores Angular porque la usamos a diario. Entonces déjame mostrarte ya una cosa genial que podemos hacer con estas herramientas CLI. Entonces el comando que voy a hacer es N G nu, este motor, debes tener un nombre junto a él. Y lo que hará en relación con crear un nuevo espacio de trabajo angular para nosotros. Bueno, la nueva aplicación Angular. Entonces, antes que nada, voy a usar claro para limpiar mi consola para que puedas ver todo con claridad. Ahora, usemos juntos este comando. Perderé mg, luego Nuevo, y pasaré el nombre de mi espacio de trabajo. Bueno, el nombre de mi solicitud. Vamos a construir esta aplicación de tareas. Entonces nombraré mi app, task dash app. Ahora bien, esto de aquí debería generar nuestra aplicación. Pero antes de que haga eso, también nos hará un par de preguntas. El primero sería, ¿le gustaría agregar enrutamiento angular? Angular es una biblioteca, también soporta enrutamiento. Entonces voy a ir aquí, sí, porque también trabajaremos con el ruteo en este curso. Lo siguiente es elegir un formato de hoja de estilo que nos gustaría usar. Angular es un valor por defecto viene con CSS, SCSS, Sass o Menos. Simplemente aquí elegiré un CSS para más aplicación predeterminada que podamos construir. En este punto, angular creará todos los archivos necesarios instalados, todos los paquetes que, bueno, la app necesita. Una vez instalada la aplicación, podríamos empezar a trabajar con ella. Se puede ver también un montón de advertencias en mi pantalla, pero eso no es necesariamente un problema. Esas son solo advertencias. Y tal vez para ti, ni siquiera muestra esos depende nuestro espacio de trabajo y también depende de una máquina. Entonces, una vez más, voy a limpiar mi terminal aquí. Lo siguiente que voy a hacer, ahora que tengo mi aplicación, podría usar cd y luego el nombre de la tarea de la aplicación. Al hacer esto, me moveré directamente a ese espacio de trabajo Angular. Dentro de este espacio de trabajo angular, en realidad podríamos ejecutar nuestro proyecto. Para ejecutar el proyecto. Ya te mostré un comando que es el suero N G. Así que simplemente podemos ejecutar este proyecto en un host local. Al lado de descender sirves. También podríamos usar, usar dash, dash Open o simplemente dash O para abrir automáticamente nuestra aplicación en nuestros navegadores preferidos. Entonces voy a hacer exactamente eso. Ahora, Engler, vamos a agarrar nuestro proyecto, compilar todo juntos, y al azar eso para nosotros. Así que solo esperemos un poco. Una vez terminado esto, deberíamos ver este dummy will default application que fue construido por Angular para nosotros. Angular hace esto automáticamente y ya tiene alguna coordenada. El código de ejemplo solo los enlaces útiles que podrían sernos útiles. Puedes ver los enlaces donde puedes aprender Angular, también la documentación de CLI y montón de diferentes características que tiene Angler. También puedes ver las características que Angular también soporta. Es como crear un nuevo componente, que aprenderemos un poco más adelante. Pero este código de partida no es importante para nosotros en absoluto. Pero como ya lo mencioné, déjame mostrarte justo al lado de mi terminal, abrí otra porque me resulta muy útil tener dos terminales abiertas. Aprenderás a este curso. ¿ Por qué? Porque también vamos a generar y crear nuevos componentes o servicios que Angler tiene y soporta. Y para eso, seguiremos manteniendo nuestras aplicaciones ejecutándose en el terminal izquierdo, mientras que a la derecha, podremos usarlo para generar esas características. Pero aquí lo que voy a hacer, voy a usar código que para abrir mi app de tareas en mi código de Visual Studio. Entonces aquí está. Este es el espacio de trabajo angular oficial. Y del lado izquierdo aquí podemos ver, bueno, todos los archivos que Angler tiene por ahora. En el siguiente video, conoceremos más sobre el Angular y lo que cada uno de estos archivos hace por nosotros. Entonces, de inmediato saltemos a eso. 3. Qué es Angular: Entonces, ¿qué es realmente Angular? Bueno, Angular, en pocas palabras, es un framework de JavaScript y se utiliza para crear aplicaciones de una sola página. ¿ Qué me hace esa aplicación de una sola página? Bueno, esas aplicaciones serían aplicaciones que tienen enrutamiento y también páginas diferentes sin recargar esas páginas reales. Entonces por ejemplo, aquí en el sitio web oficial de Angular, cuando me muevo a la página de Características, puedes ver que la página fue cambiada pero no refrescó la página en absoluto. Y esa es esa aplicación de una sola página. Todo se presenta en una sola página, pero volverá a renderizar el contenido necesario para una página específica. Ahora, a continuación, Bangalore, hay muchos frameworks de JavaScript diferentes que puedes usar. Algunos de los más populares junto a Angular, React y Vue. Entonces, ¿qué hace que el singular sea diferente y manchado desde la vista de los reactivos? Bueno, Angular es un vasto framework en su propia base de código. También soportará el ruteo e incluso el propio módulo HTTP. Al lado de eso, hay muchos pasivos Seibel diferentes de Angular que ya están integrados en angular. E incluso hay un apagón de luz de biblioteca de terceros JS que viene por defecto con Angular. Entonces por deuda se puede ver que el dedo es realmente vasto y hay bastante que aprender aquí. Y podrás construir aplicaciones bastante increíbles desde el principio con Angular. Ahora bien, debido a que es un marco tan vasto, obviamente, es mucho más difícil aprender framework. Pero hablemos un poco sobre la popularidad de Angular. ¿ De dónde viene Angular? En primer lugar, bueno, Angular fue desarrollado por el propio Google, y Google sigue trabajando en Angular diariamente para mejorarlo a partir de un año o dos años por venir. Cada seis a nueve meses, se puede esperar una actualización importante de Angular, que moverá su propia versión. Actualmente estamos en la versión 14. Y como dije, Inglaterra está justo en la parte superior junto a la vista. Y sin embargo, como los frameworks de JavaScript más populares que existen. Ahora, antes de sumergirnos en el código, solo quiero mostrarles algunos de los proyectos geniales que se construyeron con Angular. Por ejemplo, lift como aplicación, se construyó con Angular, Tinder también y Snapchat también. Hay muchos proyectos diferentes por ahí que fueron construidos con Angular. Muchos de esos tuvieron bastante éxito en ello. Entonces con esto, puedes ver que en realidad puedes construir lo que desees con Angular. Entonces es solo una novedad decidir que deseas construir alguna pequeña aplicación que haremos, justo en este curso, o una aplicación más grande como una de estas. Ahora, volvamos a nuestro código. Hablemos antes que nada un poco sobre el angular y el código aquí también. Lo primero que necesito mostrarte son esos módulos de nodo. Estos módulos de nodo se instalarán automáticamente cuando creemos nuestra aplicación angular. Para esos módulos de nodo, es muy importante tener este paquete dot json file y el archivo package.json en esta especificación y ese archivo JSON, podemos ver alguna información simple sobre nuestra app, como el nombre y la versión. Podemos ver diferentes scripts o comandos que podemos ejecutar, como NG sirven para ejecutar nuestra aplicación. Y podemos ver diferentes dependencias que se instalaron automáticamente con Angular. Se puede ver que Angular tiene un núcleo, un módulo que obviamente está instalado aquí, y que son las características centrales de Angular, el conejo. Características bastante diferentes, así como animaciones, formularios, enrutador, y así sucesivamente. Y también mencioné esto, pero adage JS como biblioteca, pesar de que es una biblioteca de terceros, aquí no se instalará biblioteca angular porque Angular bastante utilizada en esta biblioteca JS de interrupción. Ahora bien, si deseas cambiar la configuración de tu aplicación Angular, siempre puedes abrir este archivo JSON Angular.js. Aquí verás, bien todo el esquema de tu proyecto. En realidad se puede ver el nombre del proyecto y todo el esquema del mismo. Entonces, por ejemplo, si tienes algunos estilos externos que deseas usar, como importar la biblioteca Bootstrap. Bueno, puedes hacerlo aquí mismo, o incluso Bootstrap JavaScript. Puedes hacerlo en un script aquí, aquí mismo también puedes ver diferentes configuraciones para el proyecto angular como la producción misma. Puedes configurar tus propias configuraciones aquí mismo. Ahora bien, esto es solo la configuración de la aplicación Angular. Cerremos estos archivos e ingresemos a esta carpeta SRC, la carpeta de origen. Dentro de esta carpeta, lo primero que es realmente importante para nosotros es este archivo main.js. Esto significa que p es archivo. Vamos a agarrar el módulo principal del Angular y Bootstrap ese módulo. El módulo principal de la aplicación Angular suele ser este módulo de aplicaciones, que verás pronto. En el siguiente video, trabajaremos más con módulos. Angular realmente usa estos módulos y verás a través de este curso cómo lo hace. Pero en este archivo, angular, tomaremos este módulo y ejecutaremos la aplicación basada en ese módulo. Por lo que es muy importante que todo lo que tengas en tu aplicación. Debe ser importante en este archivo de módulo de aplicación, por lo que la aplicación realmente podría saberlo. Ahora aquí también tenemos styles.css, que es nuestro estilo global. Volveremos a eso un poco más tarde y también index dot HTML. Este es ese archivo HTML que siempre se volverá a renderizar. Esta es esa aplicación de una página, de una sola página. Entonces aquí podemos ver esto aprobado y por esta app acercamiento de ruta cuando tiramos la ruta actual que actualmente estamos viendo. Y configurando correctamente nuestras rutas, podremos soldar, presentar un contenido diferente para una ruta específica. Así sucede la magia. Por eso no necesitamos realmente actualizar la página. Pero podremos movernos de una ruta a otra, de nuestra página a otra, y el contenido se volverá a renderizar automáticamente. Ahora aquí dentro, podríamos tener diferentes entornos que deseamos establecer, como la producción o simplemente normal nuestro propio entorno de desarrollo. Además, podríamos tener nuestros propios activos aquí como imágenes, fuentes, etc. Y podríamos tener, bueno, la aplicación real, esta aplicación sexual. Bueno, aquí hay bastantes archivos. Pongámonos a todos a partir del archivo principal, como esta app, ese módulo que barra P S. Entonces, antes que nada, ¿por qué? Bueno, pares es una extensión para un TypeScript. Y angular por defecto, usa el TypeScript en toda la aplicación. Por lo que es muy importante que conozcas al menos los conceptos básicos de TypeScript para trabajar realmente con Angular. Pero volvamos a este archivo de módulo de aplicación. En aquí podemos ver a este decorador del módulo N G. Al usar este módulo de energía, estamos diciendo que este archivo se utilizará como módulo básicamente. Y como este es nuestro módulo principal para nuestra aplicación, nuestro módulo de aplicaciones dentro deberíamos tener todas las entradas que se necesiten. Por ejemplo, nuestro componente app, ese fue el primer componente que ya viste en un video anterior, esa primera página que se creó por defecto a partir de Angular. También hay un módulo de navegador que overs además de unas utilidades bastante agradables. Y sin ella, no podemos codificar a través de la aplicación Angular. Y también hay un módulo de salida, que es el módulo que creamos en nuestro camino. ¿ Recuerdas que nos preguntaron si deseamos usar enrutamiento Angular y seleccionamos yes por ese comando cuando generamos nuestra aplicación? Bueno, eso creó exactamente este módulo de enrutamiento y lo importó automáticamente para nosotros aquí. Ahora bien, aquí se puede ver que los componentes deben ser importantes en las declaraciones. Los módulos deben ser importantes para importar en las importaciones, hay proveedores como servicios y parte bootstrap significa lo que realmente debería ejecutar la aplicación. Y para nosotros es componente AB, nuestro componente inicial. Entonces vamos a abrir esos componentes de partida. Vamos a abrir el archivo HTML. Y esto de aquí es en realidad todo el código que podemos ver actualmente en nuestra pantalla. Volviendo rápidamente a mi pantalla. Este es exactamente ese código. Ahora bien, este código no es tan importante así que realmente podemos agarrarlo. Y usemos la etiqueta H1 aquí, y digamos hola mundo. Al hacer eso, podría abrir mi anfitrión local y podemos ver que el contenido ahora es en realidad solo el hola mundo. Ahora para que esto funcione y realmente recargue nuestra aplicación automáticamente, aún necesita mantener estos host locales ejecutándose con ese comando en merecer. Volviendo a mi código ahora, puedo ver que junto a este archivo HTML, puedo ver el archivo CSS, esa especificación, ese archivo ts y el archivo ts. Estos son todos los archivos que pertenecen a un componente. Por lo general, cuando creamos componente, tendremos cuatro archivos para ese componente. En lugar de codificar HTML, CSS y TypeScript todos juntos, angular realmente los dividirá en diferentes archivos. Entonces, al visitar esta app dot component dot ts file, bueno aquí la configuración de ese componente realmente sucede. Cada componente tendrá su propio archivo T, así como TypeScript. Y tendrá en su interior a este decorador de componentes. Tendremos un selector. Nosotros triviales, bueno, podemos usarlo para seleccionar el componente de deuda y mostrarlo con sonido. Por ejemplo, el selector aquí es ruta de aplicación. Y si recuerdas, en nuestro archivo index.html, estamos usando ese componente aquí mismo como un componente de ruta de aplicación. Ahora, junto a ese selector o fin de semana, especificamos la plantilla y el estilo para nuestro componente, y esos serían nuestros archivos HTML y CSS. Entonces, en pocas palabras, eso es sobre los componentes por ahora, trabajaremos con esos un poco más tarde. Lo siguiente aquí es este punto spec que ts file, spec files en Angular. Bueno, esos se utilizan para las pruebas. Entonces, si necesitas escribir alguna prueba automática, las harás bien aquí, en sus propios archivos de especificaciones. Y lo último que en realidad no verificamos es este módulo de enrutamiento de aplicaciones. Estos módulos de enrutamiento separados, nosotros solo, bueno, utilizará este decorador de módulo de energía para configurar el módulo. Ya sabes que es importante en nuestro módulo app. Entonces nuestra aplicación realmente sabe sobre este módulo. Y aquí se puede ver la configuración para la ruta, que conoceremos más adelante. Pero esas rutas deben ser pasadas en un módulo router desde Angular. Así que la aplicación Angular realmente podría conocer sobre estas rutas. Ahora junto a estas características como los componentes del módulo, hay muchas características diferentes que Angular tiene y soporta, como servicios, tuberías, directivas, etc. Pero antes de terminar este video, volvamos a entrar en nuestro estilo ese CSS aquí. Aquí, estilizaré mi aplicación a nivel global. Por ejemplo, voy a agarrar todos mis elementos en mi aplicación y poner el relleno en los que sean, por ejemplo, 0 y también margen para ser 0 también. Al lado de la muerte o el agarró mi cuerpo. Y final establece la familia de fuentes para usar como familia de fuentes para que sea Courier New. Y además estableceré el color de mi fuente para que sea 333333. Eso es. Ahora viendo mi aplicación, podemos ver que nuestra fuente hello world es indiferente. También podemos ver que no hay, mucho espacio aquí en la parte superior e izquierda, y estamos listos para iniciar nuestra aplicación. En el siguiente video, conoceremos más sobre los módulos. Una de las principales características de Angular. 4. Módulos: Ahora ya hablamos de los módulos, pero quiero decir algunas cosas más. También podemos dividir nuestros módulos en nuestros módulos raíz o módulos de características. Write module serían nuestros módulos principales que podríamos tener para la aplicación, como este módulo de app. Pero los futuros módulos serían como módulos específicos que serán utilizados para un futuro específico de nuestra aplicación. Digamos que tu aplicación admite la autenticación y autenticación de datos puede tener muchas páginas diferentes como iniciar sesión o iniciar sesión. Tal vez restablezca su contraseña. Y pequeños. Con muchas de esas páginas, habrá mucha funcionalidad que vendrá también. Por lo que es natural separar esa indicación relativa impar como una característica y crear el módulo futuro para ello. Lo que significa que todos los componentes que tendremos, no necesitamos importarlos en nuestro módulo de aplicaciones aquí, pero podríamos importar aquellos en nuestro futuro módulo que podríamos crear. Aún así, nuestro módulo de aplicaciones debería saber sobre esos. Así que podríamos importar ese módulo de características en el módulo SAP y toda la aplicación seguirá funcionando bien. Un caso de uso genial de estos módulos de ruta o futuros es, bueno, podemos verlo cuando abrimos este módulo de enrutamiento de aplicaciones. En este módulo de enrutamiento separado, podemos ver esta palabra clave para root. Bueno, un método llamó a la carretera. A este método estamos pasando nuestras rutas, lo que significa que estas rutas son rutas principales de nuestra raíz de nuestra aplicación. Bueno, las principales rutas para nuestra aplicación regresan a ese futuro de autenticación, ya que esa característica de autenticación tendrá sus propias páginas y también su propio módulo futuro, es natural para crear sus propias rutas futuras que podamos utilizar. Un caso de uso realmente genial de estos futuros módulos. Bueno, es este módulo compartido en Angular, nosotros, como desarrolladores solemos crear este módulo compartido donde tenemos todos nuestros, por ejemplo, componentes, servicios y tuberías que se usan bien, compartidos, ampliamente utilizados alo largo de nuestra aplicación. Entonces aquí, ahora voy a crear mi módulo compartido. Y esto es de nuevo, volveremos a utilizar la herramienta CLI para eso. Entonces para hacer eso, perdemos en G, G para generar, M por módulo. Y entonces debería usar el nombre de uno de mis módulos, el cual será compartido. Aquí podemos ver que el módulo realmente fue creado para nosotros. Volviendo a mi aplicación en nuestro lado izquierdo, voy a tener aquí una carpeta compartida. Ahora, dentro de esa carpeta de carpeta compartida, puedo ver mi compartir ese módulo, ese archivo ts. Podemos ver que este módulo compartido tiene menos código que nuestro módulo de aplicación porque no es tan importante que este módulo compartido tenga todo ese código de inicio. Este es el primer módulo de características que tenemos. Y este módulo en realidad se usa para funciones compartidas que podríamos tener. Por ejemplo, en la próxima conferencia, crearemos nuestra barra superior para nuestra aplicación. En lugar de crear esa barra superior en todas nuestras páginas, crearemos nuestro componente compartido de una barra superior. Por lo tanto, vamos a importar ese componente compartido dentro de este módulo compartido y también exportado. Por lo que nuestra aplicación podría conocerlo. Por deuda, podemos usar ese componente de barra superior donde queramos, y siempre podemos tenerlo en nuestra pantalla sin reutilizarlo una y otra vez. Así que de nuevo, este módulo compartido es realmente útil para nosotros porque siempre puede contener todas nuestras características compartidas que podríamos tener como diferentes componentes o servicios o tuberías y así sucesivamente. Entonces ahora que mencioné ese top sobre un componente, entremos en el siguiente video donde hablaré más sobre los componentes y juntos crearemos esa barra superior. 5. Componentes: Ahora los dos módulos siguientes, los componentes también son una característica muy importante de Angular. Sin componentes, no tendríamos ninguna página e incluso ningún contenido en nuestra pantalla, justo en este video, te mostraré cómo podemos crear un componente en Angular. El componente que deseo crear es ese componente de barra superior que podemos usar. componentes de la barra superior deben presentarse en todas nuestras páginas que podamos tener en nuestra aplicación. Por lo que sería bueno crear algún tipo de componentes reutilizables. Bueno, todos los componentes en Angular son en realidad totalmente reutilizables. Pero para nosotros aquí iremos un paso más allá y creamos este componente de barra superior para estar en nuestro módulo compartido. De esa manera indicaremos que el componente de barra superior es un componente compartido y no pertenece a ninguna página específica. Entonces, para crear este componente de barra superior en mi terminal usando la herramienta CLI de Angular. Nuevamente, usaremos comando de N, G, luego G para generar, ver para componente. Y voy a generar este componente en carpeta compartida, que es nuestro módulo barra superior slash. Ahora en mi editor de código, realmente puedo abrir ese módulo compartido. Vamos a carpeta compartida, luego barra superior. Y aquí puedo ver cuatro expedientes diferentes. Hay HTML, CSS, TypeScript, y también archivo de prueba para este componente. Ya mencioné esto al principio que cada componente suele venir con cuatro archivos para ello. Estos cuatro archivos en realidad serán ese componente. Así que hemos dividido nuestro HTML, CSS y TypeScript, así que en realidad no escribimos todo en un solo archivo. Podría ser un archivo bastante largo. Entonces en este componente de barra superior, Angular, una vez que genera componente de deuda, también agrega este tipo de contenido ficticio para ese componente. Así que vamos a asegurarnos de que en realidad presentamos este componente en nuestra pantalla. Entonces entrando en el archivo TypeScript de la barra superior, puedo ver el selector de f dash top bar, lo que significa que en mi app punto componente donde tengo, donde tengo este Hello World, voy a eliminar este Hello World ahora, y agregaré elemento HTML5 de f, f dash top bar. Y esto realmente debería presentar nuestro componente de barra superior. Pero aquí mismo, sí tenemos un error. Y también, si abriéramos nuestro anfitrión local, ese mismo error será visible en nuestro anfitrión local. Esto es bueno porque Angular es mucho más fácil de depurar de esta manera. La razón por la que tenemos este centro es porque nuestro componente de aplicación no conoce la barra superior de App. Y la razón por la que no lo sabe, bueno, esta barra superior de la aplicación pertenece a esta compartir el módulo. Entonces dentro de este módulo compartido en array de declaraciones, puedo encontrar este componente de barra superior. Pero si iría a mi app dot module dot txt file, no hay tales componentes, eso es solo componente AB. Entonces, ¿qué debemos hacer aquí? Bueno, deberíamos importar este componente de barra superior en nuestro módulo de aplicaciones para que podamos usarlo a través de los componentes de nuestro módulo de aplicaciones que podríamos tener. Pero como tenemos este módulo compartido, de este módulo compartido, simplemente voy a exportar. Entonces voy a HIT matriz de exportaciones de Estados Unidos y puedo escuchar más allá de lo que desean exportar. Para mi eso puede ser componente de barra superior. Ahora, en lugar de importar mi componente de batería superior en mi módulo de aplicación, simplemente puedo importar mi parte del módulo aquí. De esta manera, voy a importar módulo compartido y todo lo que se exporta de ese módulo compartido. Y con esto, simplemente arreglamos ese error, lo que significa que ahora estamos usando nuestra barra superior de aplicación en nuestro archivo HTML de punto de componente de punto de aplicación, verificando mi host local. este momento puedo ver el texto aquí de los trabajos de barra superior, lo que significa que el componente realmente se presenta en mi pantalla en el contenido de ese componente es trabajos de barra superior. Hablando de ese contenido. Vamos a crear algunos aquí. Entonces aquí, voy a quitar este párrafo y agregaré un div con la clase de barra superior. Esta clase se utilizará posteriormente para estilizar. Ahora bien, en esta barra superior se pueden escuchar dos secciones. La primera sección puede ser una sección de logotipo. La segunda sección puede ser una sección de navegación. Entonces ahora que tenemos estas dos secciones en mi sección de logo, lo haré, bueno, no usaré ninguna imagen para un logotipo, o simplemente usarán H2, que dirá tareas. Así que la tarea arriba. Así que vamos a usar tacón singular aquí. Ahora para mi navegación aquí, voy a crear navegación con lista desordenada. Entonces el primer elemento de la lista tendrá una etiqueta de anclaje. Esta H ref puede llevar a un hash. Por ahora, más adelante verás cómo hacer un enrutamiento adecuado en Angular. Aquí, lo que voy a hacer, voy a decir, guau, ahora voy a copiar este ítem de la lista. Abajo. Y para el segundo ítem de la lista se puede decir sobre. Por lo que podemos tener dos páginas Inicio Acerca de la página para nuestra comprobación de la aplicación. Ahora bien, mientras nuestro anfitrión local, esto es lo que estamos aquí, solo algún tipo de logotipo, que son textos de tope de tareas y dos enlaces aquí. Así que vamos a darle estilo a esta aplicación es que estamos escribiendo este código en un componente de parte superior. Somos capaces de abrir el archivo CSS del mismo y darle estilo a este componente en realidad, para darle estilo a esta barra superior, voy a agarrar mi barra superior dividida por n. Voy a mostrar eso como un flujo. Entonces justificaré el contenido en el interior como espacio entre ellos. Y podría agregar alguna sombra de caja, por ejemplo, de 02 píxeles, cinco píxeles. Y digamos que puede ser ceros, ceros, ceros, ceros, ceros 0 para que D le tenga cierta transparencia. Además, puedo configurar la ropa de cama de 20 pixeles. Ahora esta será nuestra barra superior. Ahora, diseñemos nuestra navegación. No me voy a molestar con el logo. Entonces barra superior, luego mi sección de navegación que tienen y luego listas desordenadas que tengo. El estilo de lista para estos será ninguno porque deseo presentar enlaces uno al lado otro y no una lista real. Ahora abajo, podría apuntar de nuevo a mi barra superior. Navegación lista desordenada y cada elemento específico de la lista a continuación. Para cada elemento específico de la lista, los mostraré como en línea para estar uno al lado del otro. Y voy a añadir el margen del lado derecho para que sean diez pixeles, que puedan tener un poco de espaciado entre esos. Ahora, de nuevo, apunte a mi barra superior, luego navegar por esa lista desordenada, elemento de lista y cada etiqueta de anclaje específica en nuestro elemento de lista. Aquí, estableceré el tamaño de fuente de 20 píxeles. Entonces usaré decoración de texto para no ser ninguno. Y cambiemos el color aquí. El color de mis enlaces puede ser 333333. Y por último, volveré a apuntar a mis etiquetas de anclaje, pero esta vez efecto hover sobre esas. Entonces también activo y también foco. Entonces por todos estos, solo voy a cambiar el color para que sea 777777. Y con esto, en realidad tenemos nuestro contenido, HTML, estilo, nuestro código CSS para nuestra barra superior. ¿ En cómo sabe este componente de esto? Bueno, en componentes de punto de barra superior, el archivo ts, podemos ver donde declaramos nuestro componente. Hay un selector, pero también hay una plantilla específica y también estilos específicos que está más allá de esa plantilla. Entonces esta es básicamente la configuración de nuestro componente. En mi pantalla ahora mismo podemos ver nuestra barra superior. Hay registro en el lado izquierdo y hogar y sobre los enlaces en el lado derecho. Incluso puedo hacer zoom un poco para que lo veas mejor. Lo bueno de esta barra superior, bueno, es un componente compartido, lo que significa que cuando vaya a mi página de inicio, seguiré viendo, aún debería ver mi componente de barra superior. Y también cuando vaya a acerca de la página, volveré a ver mi componente de barra superior una vez que configuré todo bien, mi enrutamiento y las páginas también, hablando de deuda, ¿verdad? En el siguiente video, trabajaremos con nuestro ruteo. 6. Enrutar: Entonces el enrutamiento en general, bueno, en una Web rara vez se usa hoy en día. Casi no hay sitio web o ninguna aplicación que realmente no tenga rutas. Así que básicamente siempre que desees moverte de página página o hacer clic en un artículo específico para leer ese artículo. Ese sería el ruteo. Todas esas rutas deben ser establecidas dentro de la aplicación. Y también todas esas rutas deben saber qué contenido presentar exactamente al usuario. Y en Inglaterra, eso es realmente útil porque Angular tiene su propio enrutamiento angular. Entonces, ¿por qué es importante que Angular tenga su propio enrutamiento? Bueno, muchas tecnologías hoy en día, incluso las populares, no soportan el enrutamiento desde el principio. Por lo tanto, deberá configurar las rutas y el enrutamiento. Y es bastante agitado trabajar con, pero en Angular eso ya está configurado. Entonces, si recuerdas cuando generamos nuestra aplicación junto al módulo angular, también teníamos este módulo de enrutamiento de aplicaciones. Y este es el lugar donde configuraremos nuestras rutas. Para esas rutas, deseo escuchar mi casa y sobre la página. Entonces voy a crear ahora dos páginas, home y about page. Las páginas no son diferentes a solo componentes. Entonces lo que podríamos hacer en realidad es generar aquí dos componentes. Entonces nuevamente, usemos esa herramienta CLI. Voy a usar N, G, G para generar componente C4, y eso generará mi página de inicio aquí. Una vez terminado esto, voy a repetir el mismo comando, pero esta vez por aproximadamente página. Ahora que tenemos nuestras páginas sin componentes para un hogar. Y también sobre la página, bueno, podríamos configurar nuestras rutas aquí en estas rutas array. Entonces para configurar la ruta aquí, voy a usar el objeto. Y dentro de este objeto, puedo usar la propiedad path, esta ruta. Bueno, también debemos declarar un par a donde deseamos llevar a nuestro usuario. Entonces como tengo esa página de inicio, creo que mi usuario a una ruta casera. Para esta ruta casera, también debo crear el componente que utilizará el componente específico que se debe presentar en esta ruta de origen. Y para mí, ese será componente del hogar. Solo asegúrate en la parte superior para importar este componente para el hogar. Visual Studio Code es lo suficientemente inteligente como para hacerlo automáticamente por mí. Ahora, vamos a crear la siguiente ruta. Entonces coma aquí y luego el siguiente objeto para una mascota de aproximadamente, entonces el componente para esta página será sobre componente. También utilicé aquí capitalizado sobre. Voy a cambiar eso a, bueno, todas las letras a minúsculas. Bueno, en este momento, sí tenemos nuestras rutas aquí en la URL. Si cambiara mi anfitrión local para cortar casa. Bueno, el hogar seguirá estando en la URL, lo cual es bueno. Si lo cambiara a aproximadamente. Todavía está ahí. Entonces Angular en realidad sabe de esto. No hay contenido en la pantalla, y tampoco podemos cambiar la ruta haciendo clic aquí, puedes ver solo efectivo aquí, pero lo arreglaremos. Entonces también cuando vengo al puerto host local 8200, aquí no hay nada porque tienen esta página de inicio y también ruta de origen. Sería bueno redirigir automáticamente al usuario a la página principal para configurar esa redirección en la parte superior de mi matriz aquí, voy a crear la nueva ruta. Esta nueva ruta tendrá, bueno, debería tener una ruta que será solo la cadena vacía, lo que significa cuando el usuario acaba de visitar nuestro dominio. Y una vez que eso suceda, usaré propiedad de redirigir a y redirigiré al usuario a mi página de inicio. Y lo último, también deberíamos usar path match, entonces, cómo debe coincidir nuestra mascota. Y aquí puedo usar full match para mi camino. Así que ahora revisando rápidamente mi navegador, si eliminaría esta columna de mi página y solo ingresara mi dominio aquí, podemos ver que aún estamos redirigidos a la barra de inicio porque esa dirección roja era en su lugar. Ahora porque estoy en esta página de inicio, debería ver algo de contenido aquí, al menos ese texto ficticio que viene con Angular. Trabajos en casa, ¿verdad? Pero aquí no hay contenido pesar de que existe la ruta de origen. Y sabemos que tenemos ese componente del hogar. Bueno, a pesar de que tenemos ese enrutamiento en su lugar, angular todavía no sabe dónde debería mostrar esos componentes. Así que en mi app dot component dot archivo HTML, donde tengo esta barra superior, justo debajo, voy a usar elemento llamado salida Router. Esta ruta y outlet básicamente sacarán nuestros componentes en su interior. Entonces, dependiendo de qué ruta estemos como en casa o sobre, agarrará esos componentes que se utilizan para esas rutas y los presentará aquí mismo en exhibiciones donde usemos esta ruta y outlet, si lo usaría en otro lugar , presentará esos componentes ahí. Y ahora ya podemos ver un cambio. Vemos estos trabajos caseros. Si cambiara manualmente la página para cortar, entonces vería sobre obras. Pero dije el manual y correcto, así que seguimos siendo incapaces de cambiar esto por cheque, cambiando los enlaces aquí, ¿verdad? Solo estamos mudarnos a ese hash, que no es ruta existente para nosotros. Entonces para eso, en realidad necesitamos ir en nuestro componente de barra superior donde tenemos estos enlaces. Entonces en Angular y en vez de usar un borrador como este, tenemos algo diferente. Se llama enlace de enrutador. Este enlace de enrutador puede llevarnos a alguna parte. Para mí aquí, me llevará a la página de inicio de slash porque esta es una ruta de origen aquí, también cuatro abajo. Volveré a quitar esta H ref y usaré hear slash. Acerca de. Ahora sí tenemos algunos errores aquí. Es porque este enlace del router no es propiedad conocida de este elemento específico. Y no es que sea propiedad desconocida. Es porque en este componente de barra superior, bueno, este componente de parte superior pertenece al módulo compartido. Este módulo compartido no sabe que realmente usamos enrutamiento en algunos de sus propios componentes. Por lo que es realmente fácil enfrentar esto en la matriz de entradas donde solemos importar son módulos. Bueno, solo podemos importar módulo de módulo de enrutador importando este módulo y también asegurarnos de importarlo en la parte superior desde un enrutador de barra angular. Al importarlo, perderemos esas flechas. Ahora, ¿qué significa esto? Si hago clic en Acerca de, me moverá a la página Acerca de. Si hago clic en home, me moverá a la página principal, lo que significa que tenemos nuestras páginas en el ruteo en su lugar. Ahora, junto a este ruteo que viste, la redirección y también cómo configurar los enlaces para trabajar con el enrutamiento y las páginas. Eso es mucho más al ruteo. El enrutamiento es un módulo completo que se puede configurar también para un módulo hijo, podríamos tener rutas infantiles, también podríamos tener rutas dinámicas por ideas específicas o por babosas específicas como desee. También podríamos pasar datos de una ruta a otra ruta. También podríamos aprovechar nuestras rutas y hacer algo específico con nuestras rutas, se pueden sacar los parámetros de las rutas y mucho más, mucho más. Pero el enrutamiento en Angular podría ser su propio curso, para ser honestos, puede tomar probablemente una hora o dos o tres sólo para explicarlo a fondo. Entonces, en lugar de hacer todo eso para este curso rápido, simplemente continuaremos con este curso rápido para finalizar nuestra aplicación de tareas. Y seguiremos con los servicios. 7. servicios: Entonces otra característica muy importante de Angular, se llama servicio. servicio o los servicios son en realidad características inyectables, lo que significa que podríamos inyectar cada servicio donde queramos, en nuestros diferentes componentes, en nuestras diferentes directivas, pipas, Donde quiera que deseo. ¿ Y por qué querríamos eso? Bueno, servicios porque esos son inyectables. Esos son principalmente almacenar nuestros datos cada vez que deseamos tocar a nuestro servidor para obtener algunos datos específicos, o simplemente deseamos almacenar localmente algunos de los datos en nuestra aplicación. su mayoría haremos eso a nuestro servicio. Y como el servicio es una característica inyectable, se puede inyectar donde lo necesitemos y sacar esos datos de ese servicio específico. Para crear un solo servicio, volveremos a utilizar la CLI. Entonces aquí usaré N, G, G para generar, S para servicio. Y el servicio es inyectable donde lo necesitemos. Nuevamente vamos a generar este servicio en nuestro módulo compartido. Esta vez, voy a generar este servicio en módulo compartido que en la carpeta Servicios. Y entonces el temario se llamará Servicio de Datos porque en realidad trabajaremos con los datos dentro de este servicio. Así que ahora en mi Visual Studio Code, puedo entrar en mi carpeta compartida que servicios y abrir el Servicio de Datos. Cuando generemos el servicio , vendrá con dos archivos. Un archivo es la clase del servicio en sí, y el otro archivo es un archivo de prueba para este servicio. Por lo que ahora nos centraremos en estos datos que dan servicio dot ds bar. En la parte superior aquí podemos ver que el plan de estudios en sí es inyectable. Y aquí también podemos ver que estamos utilizando ese decorador inyectable para describir este servicio. Entonces, ¿dónde podemos inyectar este servicio por defecto en Angular? El servicio se brindará bien inyectado a nivel raíz, lo que significa que donde quiera que utilicemos este servicio, podremos usarlo si desea brindarle este servicio. Solo módulo específico. Puede especificar ese módulo aquí y en realidad Importante servicio de deuda en la matriz de proveedores de ese módulo. De esa manera se puede tener un servicio específico para un módulo específico. Pero hay, esta es una pequeña aplicación. No tenemos que preocuparnos por eso. Podemos simplemente dejarlo como está para ser proporcionado a nivel raíz para que podamos usar nuestro servicio donde lo necesitemos ya que el servicio contendrá nuestros datos. Trabajemos con algunos datos ficticios aquí y también compartamos esos datos con diferentes componentes. Entonces lo que voy a hacer aquí en la clase de este servicio, voy a crear una propiedad pública. Realmente no necesitamos declarar una propiedad pública o privada, pero es un buen ejercicio hacerlo porque angular es una tecnología TypeScript, ¿verdad? Entonces el TypeScript al final se compilará en JavaScript haciendo esas palabras clave específicas como público o privado o tipos específicos. El TypeScript lo hará mucho más suavemente. Entonces aquí voy a crear la propiedad pública de nombre de usuario. Y este de aquí será el tipo de cadena. Por defecto, este nombre de usuario puede ser John Doe por ejemplo. Ahora tenemos estos datos de nombre de usuario en nuestro servicio y podemos compartirlos desde aquí donde queramos. Entonces, ¿qué sería bueno para nosotros compartirlo aquí? Bueno, después de mi constructor aquí, en realidad podría crear propiedad pública, que será obtener nombre de usuario. Esto aquí será un método y devolverá una cadena de vuelta. ¿ Por qué va a devolver una cuerda? Bueno, podemos usar aquí return y luego este nombre de usuario, esto quiere decir que dondequiera que utilicemos este método, va a estar de acuerdo sobre username y simplemente devolverá el valor de ese nombre de usuario. Así que intentemos usar este nombre de usuario en nuestra página de inicio aquí. Entonces abre el archivo TypeScript de este objetivo. En este momento, el hogar no conoce este Servicio de Datos. Entonces en el constructor del agujero, podemos crear la propiedad privada, que puede ser servicio de datos. Y podemos establecer el tipo para que sea Data Service. Solo asegúrate de importar ese servicio de datos en la parte superior aquí. Ahora bien, el componente del hogar sí sabe de este Servicio de Datos. Además, ¿cuál es la diferencia entre propiedades privadas y públicas? Bueno, las propiedades públicas, puedes usar aquellas fuera de este archivo, pero las propiedades privadas no se pueden usar fuera del archivo. Esos se pueden usar solo en esa clase específica en la que se declaran esos. Entonces ahora en realidad en este método Mg on init, tomaremos nuestro nombre de usuario. Entonces para eso, vamos a crear aquí antes que nada, la propiedad pública. Nuevamente de nombre de usuario, que será una cadena. Y por defecto será una cadena vacía. Entonces ahora en este motor en él, usaré este nombre de usuario y lo pondré igual a esto, ese punto de servicio de datos obtendrá nombre de usuario. Y por esto, este get username nos devolverá la cadena de nombre de usuario. Y esa cadena se almacenará en nuestra propiedad username dentro de estos componentes. Pero, ¿por qué usamos esto en esta ONG? Ngo minuto es un gancho de ciclo de vida en Angular. Este gancho de ciclo de vida se ejecutará siempre que este componente específico sea cargado, bien inicializado. Lo que significa que cuando visitemos nuestra página de inicio, este código se ejecutará. Hay otros ganchos también del ciclo de vida que podemos usar N G en los cambios en junio, destruir, y así sucesivamente. Pero no nos vamos a molestar con los de aquí solo porque esos son mucho más complejos de explicar. Y esto sigue siendo un curso de choque. Entonces, ¿cómo podríamos saber que este nombre de usuario realmente tiene un dato? Bueno, vamos a entrar en nuestro HTML aquí. Y en lugar de este párrafo, voy a usar la etiqueta H1 aquí. Aquí, usaré la unión de propiedades en Angular para hacer eso, usar llaves rizadas, llaves dobles, y por dentro podríamos pasar nuestra propiedad. Para eso, podemos pasar, por ejemplo, nuestro nombre de usuario. Entonces este nombre de usuario, una vez que tenga los datos, se presentará aquí en H1. Entonces podemos presentarlo. Bien texto dinámico. Ahora, revisando mi solicitud, podemos ver a John Doe aquí. Si iría a la página Acerca de obras, vuelve a casa. Todavía podemos ver a este John Doe, que es realmente bueno. Esto significa que almacenamos nuestros datos en un servicio. Después movemos esos datos a un componente específico y los mostramos en una pantalla. Pero ahora se puede decir, bueno, eso era solo el nombre de usuario, eso no son datos reales. Esto fue solo un dato ficticio que creamos. Bueno, en el siguiente video realmente vamos a trabajar con el http, donde despacharemos llamadas mantenidas desde HTTP para sacar algunos datos de un servidor y realmente presentar algunos datos reales en el pantalla. 8. HTTP: Por lo que HTTP o Hypertext Transfer Protocol es un protocolo de capa de aplicación. Está diseñado para la comunicación entre una aplicación web y servidores web. Lo hace a través de múltiples métodos que podemos usar. Como método get para obtener algunos datos específicos o método post para guardar algunos datos específicos. Junto a eso, se puede utilizar para pasar encabezados al propio servidor web. Entonces podríamos, por ejemplo, autenticar a nuestro usuario con el token adecuado. Además, podríamos enviar parámetros específicos a través de esta llamada HTTP. Y de esa manera, nuestro servidor podría acceder a nuestra base de datos en función esos parámetros y extraer datos específicos basados en esos parámetros. Algo así se usa principalmente para filtrar datos o clasificar datos. Y HTTP hace todo eso con un simple mensaje de solicitud y respuesta. Ahora, http no es nada específico de Angular. Se puede utilizar en cualquier tipo de tecnología que sea capaz de contactar con el servidor. Entonces podríamos usarlo en, bueno, otros frameworks de JavaScript como React o view, también podríamos usarlo en JavaScript raw. Al lado de eso, podríamos usarlo en una plata con NodeJS, Python, C-Sharp, etc. pero Angular tiene su propio módulo para el HTTP. Muchas otras tecnologías no soportan su propio módulo para HTTP, pero la angular sí. Con ese módulo. Somos capaces de usar HTTP y todas sus características bien, a través de una forma mucho más fácil que verá pronto. Pero lo primero aquí es que necesitamos importar este módulo HTTP a nuestra aplicación. Así que nuestra aplicación realmente podría usarlo. Para hacer eso. Voy a abrir mi módulo de datos de la aplicación dot txt file. En la matriz de entrada de este archivo, agregaré el módulo cliente HTTP. Ahora bien, esto no se importará automáticamente. Entonces en la parte superior aquí, voy a importar este módulo cliente HTTP desde Angular slash, common slash HTTP. Yeso es todo. Con esto aquí, nuestra aplicación conoce este módulo cliente HTTP que podemos usar y lo usaremos. Entonces usaremos este módulo HTTP para extraer algunos datos específicos y extraeremos los datos de nuestra API de marcador de posición JSON. Esta API también costará muchos datos ficticios diferentes. Así que en realidad podríamos usarlo para probar nuestra aplicación, lo cual es realmente buen ejemplo para este curso con el que estamos trabajando aquí. Si me desplazo hacia abajo en este sitio web de marcador de posición JSON, aquí podemos ver diferentes recursos que podemos usar, como publicaciones, comentarios, álbumes, fotos a esos usuarios. Si continuara desplazándome hacia abajo, podemos ver diferentes métodos HTTP que podemos usar git para obtener el post de datos para guardar datos, PUT o parchear para actualizar datos, eliminar, eliminar datos. Ahora un enlace a este sitio web escucharás en los recursos de este curso para que siempre puedas visitarlo e intentar trabajar con un dato específico de este sitio web. Los datos con los que trabajaremos son estas tareas pendientes. Entonces, aunque estemos creando la aplicación de tareas, nos aseguraremos de que estas dos, esas son en realidad nuestras propias tareas. Así que volvamos al código. Vamos a entrar en nuestros servicios compartidos y abrimos estos datos que dan servicio dot ds bar. Ahora que trabajamos con este método get username, en realidad podría eliminar este método principal getUser y también eliminar este nombre de usuario de aquí porque ya no lo necesitaremos. Además, debo entrar en mi hogar que componente del hogar. Elimine el nombre de usuario de aquí, y en realidad elimine la llamada a este método get username relacionado con la entrada de este Servicio de Datos. Todavía lo guardaré aquí porque lo vamos a necesitar. Así que volviendo a mi servicio aquí, debería poder sacar los datos esa API de marcador de posición JSON. Para hacer algo así, debemos indicarle a este servicio que usaremos ese módulo cliente HTTP. Y HTTP tiene su propio proveedor que podemos usar, que también es inyectable, lo que significa que podríamos inyectarlo aquí en este servicio. Entonces voy a crear propiedad privada de HTTP, y estableceré el tipo de la misma para que sea cliente HTTP. Este cliente HTTP debe ser importante desde una barra angular, barra diagonal común HTTP. Solo asegúrate de que antes de esto, realmente importas este módulo de cliente HTTP en tu propia aplicación, ese archivo de módulo. De esa manera puedes usar este cliente HTTP. Ahora, vamos a crear el método que vamos a sacar esas tareas por nosotros. Así que aquí voy a crear método público porque vamos a utilizar este método fuera de este archivo. Y lo voy a nombrar, conseguir tareas. A pesar de que estamos tirando de las dos puertas de ese lugar adyacente llamado API. Todavía voy a renombrar esos para que sean tareas porque estamos creando aquí aplicación de tareas. Este método consigue tareas nos devolverá algo. Devolverá lo observable. Y lo observable debería tener aquí un tipo específico, al que volveré. En primer lugar, ¿qué es observable? Se puede ver que observable es algo que pertenece a eso agregar extra sí, biblioteca que mencioné al inicio de esta clase. Bueno, la biblioteca Alex JS es vasta. Hay muchos métodos y muchas características que tiene. Entonces no voy a profundizar con ello porque puede tomar todo el curso sólo para explicarlo. Pero en pocas palabras, observable es algo que envolverá nuestros datos para nosotros. Envolverá nuestras tareas. Como envolverá nuestras tareas, podremos aprovechar bien esas tareas y usar diferentes métodos en esas tareas. Entonces, si necesita transformar sus datos, observable es una buena opción para usted porque en realidad podría mapear esas tareas, transformarlas como desee y devolver solo los datos que necesita para nosotros aquí. Esto debe volver observable aquí, porque el cliente HTTP de Inglaterra siempre devuelve la espalda observable. Porque de esa manera es mucho más fácil trabajar con datos utilizando ese observable, cual verás así, pero ahora relacionado con este tipo genérico que se debe pasar a este observable. Bueno, debemos pasar el tipo de datos real que vamos a ir aquí. Y por ahora, no sabemos realmente qué tipo de datos recuperaremos de ese marcador de posición JSON. Entonces voy a establecer el tipo para que sea cualquiera aquí. Y después cuando tengamos datos reales, obtendremos esos datos y comprobaremos qué, bueno qué datos reales tenemos. Y crearemos un modelo específico para esos datos, pero más sobre eso más adelante. Ahora, dentro de este método, podríamos escribir nuestro código para obtener la tarea. Así que aquí he usado la devolución y voy a devolver esto, ese HTTP. Entonces estoy llamando a este modelo HTTP. Y sólo el tiempo tendrá diferentes métodos que pueda usar. Uno de esos métodos es este GetMethod. Dentro de este método get, debemos pasar la cadena a la API. Bueno, la cadena de código real que obtendrá los datos para nosotros. Volviendo al sitio web del marcador de posición JSON, haciendo clic en estas dos puertas, pude ver aquí que me sacará 200 tareas pendientes. Justo aquí en la URL, puedo ver la URL real que va a hacer eso por nosotros. Así que vamos a copiarlo De vuelta en código. Yo simplemente podría pegar estas dos puertas aquí. Y como va a tirar demasiado que hacer es como 200 de esos. Realmente no deseo trabajar con tal cantidad de datos. Entonces pude escuchar establecer el parámetro, que es el límite de subrayado, y lo pondré igual a cinco. De esta manera, extraeré solo las cinco tareas pendientes de esa API de marcador de posición JSON. Este límite de subrayado no siempre es el mismo. Cada API tendrá su propio parámetro. Entonces, si estás construyendo tu propia API, tendrás tus propios parámetros. Simplemente sucede que la API de marcador de posición JSON usa este límite de subrayado. Y con esto, estamos prácticamente terminados con nuestro Servicio de Datos. Ahora, vamos a ir a los componentes de nuestro hogar en el, realidad obtener esos datos en este componente, en mi componente de casa aquí, en mi energía encendido, en él. Volveré a usar este oscuro Servicio de Datos. En este tiempo, utilizaré un método llamado get tasks. Ahora bien, este método debería devolvernos, bueno, nuestras tareas de vuelta a nosotros, pero como es observable, podemos usar métodos específicos en él. Como es observable, devolverá ese envoltorio de datos. Entonces aquí en realidad podríamos usar ese suscribirse para suscribirnos a nuestro observable. Al suscribirte a nuestro observable, en realidad obtendremos una respuesta directa de ello. Entonces aquí voy a usar respuesta, que debería establecer el tipo específico de esta respuesta. El tipo serán los datos reales que estamos recuperando. Actualmente, no tenemos el tipo específico, modelo específico para esos datos. Entonces usaré cualquiera aquí, pero volveré a esto más tarde. Una vez que escucho mi respuesta de vuelta mis datos, en realidad podría usar aquí el método de flecha y simplemente console.log mi respuesta. Entonces usaré el registro de la consola de datos y luego la respuesta. Así que en realidad podríamos ver lo que estamos recuperando. Lo bueno de estos suscribirse, no solo maneja la respuesta, también puede manejar el error. Así que aquí en realidad podría pasar el error. Y consola dot log esos datos. Entonces, si se produce un error, sabremos cuál es este error. Y en realidad podríamos manejarlo mostrando algún tipo de alerta en una pantalla, por ejemplo. Lo último antes de verificar nuestros datos, voy a abrir el componente punto home dot archivo HTML vistas aquí este nombre de usuario. Y como eliminamos el nombre de usuario, no sabemos mucho al respecto. Entonces solo moveré este texto para que sea Hello World una vez más. Así que en realidad podríamos hacer que estos componentes sean bien realizables. Ahora, dentro de mi solicitud, si lo hiciera. Bueno, revisa la consola de la aplicación. En realidad podría, en realidad voy a ver este registro de datos, que presentará la matriz de cinco elementos en su interior. Y todos esos elementos son en realidad las tareas pendientes de esa API de marcador de posición JSON, lo que significa que la solicitud de torre para los datos fue exitosa y en realidad estamos obteniendo la respuesta de ese HTTP. Ahora, lo último antes de cerrar este video, ya es lo suficientemente largo. Voy a volver a la carpeta compartida y crear otra carpeta es sitio llamado modelos. En el interior ahora voy a crear el modelo de mis datos. Entonces aquí voy a crear un archivo llamado Task Data Model Ts. Entonces en este archivo, podría exportar la interfaz de una tarea. Y dentro de esta tarea, debo declarar qué tipo de propiedades podrían tener los datos de las tareas. Y en mi aplicación, tengo esas propiedades aquí mismo. Tengo un valor terminado de Booleano. Tengo el ID del número, título de la cadena y el ID de usuario del número también. Entonces en mi tarea, voy a crear valor terminado de Booleano. Entonces tendré DNI de número. Entonces tendré titulo de cadena. Y por último, ID de usuario, que será número. Entonces ahora que tenemos nuestro modelo de tareas, en realidad podemos usar este modelo en lugar de deuda. Bueno, cualquier tipo que usemos. Entonces, antes que nada, de vuelta a mi servicio aquí mismo, estoy usando el observable, que devolverá cualquier dato de vuelta. Entonces aquí debería devolver los datos de la tarea. Solo asegúrese de importar la tarea aquí desde un archivo de modelo de datos de tareas adecuado. Aquí dentro. En realidad, no devolverá solo una tarea, sino la variedad de tareas. Entonces aquí voy a establecer que volverá atrás tarea caret. Y como estoy declarando que el tipo genérico aquí, este getMethod, también debería saber qué tipo de datos nos va a recuperar. Entonces voy a pasar de nuevo tipo genérico aquí y otra vez usar esa matriz de tareas con deuda. También debemos corregir el error aquí. Ahora a partir de aquí, vamos a nuestro componente punto de inicio que P es archivo. Aquí dentro. Nosotros sí tenemos nuestra respuesta la cual volveremos solo que cualquier tipo. Entonces aquí voy a volver a establecer tarea a partir de un modelo de tareas específico que creamos. Y será la matriz de tareas. Con esto, prácticamente hemos terminado con esta conferencia. Ya viste ¿cómo puedes usar el módulo HTTP? ¿ Cómo puedes obtener los datos de tu API? Pase esos datos de un servicio a su componente, y realmente creó el modelo para los datos y prepare los datos para que sean utilizables en su aplicación. Al hablar de eso, en la próxima conferencia, haremos exactamente eso. 9. Plantilla: Tan relacionado con esta conferencia, realidad almacenaremos nuestras tareas localmente en nuestro componente doméstico y usaremos bien esas tareas para presentarlas en una pantalla. Entonces antes que nada, vamos a almacenar esas tareas aquí donde estoy obteniendo la respuesta de los datos. De hecho, podría guardar esa respuesta en algún tipo de propiedad. Entonces aquí en la cima, voy a crear propiedad pública de tareas. Y sostendrá el tipo de tarea Curry porque espera que esos datos. Y por defecto, será una matriz vacía. Porque por defecto no sabemos si tenemos algún dato. Pero una vez que obtengamos los datos, una vez que consigamos estas tareas dentro de aquí, usaré esta propiedad dark tasks que acabamos de crear. Y lo pondré igual a la respuesta que estamos recuperando, que son esas tareas bien pendientes de la API de marcador de posición JSON. Ahora que tenemos estos, vayamos a nuestra casa, ese componente, ese archivo HTML y creamos algo de contenido y también estilo a ese contenido. Entonces dentro de aquí, voy a crear el trato. En este div puede contener una clase de tareas. De esta manera será más fácil después de estilizar. Aquí dentro, pondré la etiqueta h3 para un titular, que veremos solo tareas. Y después del titular, en realidad podría crear la lista de tareas. Para ello, voy a crear la tarea de fotos, que contendrá la clase de tareas. Y, ¿qué debería realmente esta tarea aquí? Bueno, podríamos abarcar, bueno, el título de la tarea y voy a poner eso en un lapso. También lo envolveré con el texto en negrita y podríamos escribir, por ejemplo, aprender Angular. Esta es una de las tareas, por ejemplo. Ahora, junto a este título de una tarea, podría ser bueno usar realmente también el valor completado de la tarea. Entonces pudimos ver si completamos tarea específica. Entonces aquí volveré a usar este bolígrafo y por dentro solo usaré texto completado. Aquí puedes usar algún tipo de icono o una imagen, pero voy a usar textos terminados. Así es más fácil. Ahora, vamos a agarrar toda esta tarea y copiarla. Digamos tres tipos, 12. Entonces estas son tres tareas. Vamos, cambiemos los valores para esas tareas. Aquí, voy a decir lavar un auto. Y también el último puede ser por una comida. Eso es más o menos. En nuestra aplicación, deberíamos ver algo así. Déjame acercarme un poco. Entonces sí tenemos nuestro título de tareas. Cada tarea tendrá su propio título similar y además completó el texto para ello. También vamos a estilizar estos un poco ahora. Entonces, para darle estilo a estos, abriré el archivo CSS de punto de componente de punto de inicio. Dentro, voy a agarrar esas tareas principales que tenemos. Voy a establecer el ancho del div para que sea de 500 píxeles. Voy a establecer el margen para que sea de 100 píxeles, arriba y abajo fuera de izquierda y derecha. Así podríamos alinearlo al centro en Daniel establecer el centro de alineación de texto también. Ahora cada tarea que para ayudar, voy a agarrar esa tarea. Voy a exhibir eso como un flujo y justificaré que el contenido interior esté espaciado entre ellos. Y lo último, voy a texto alinear todo al lado izquierdo. De esta manera con este espacio entre nuestro título de una tarea debe estar en el lado izquierdo, en este valor completado debe estar en nuestro lado derecho. Y finalmente, volveré a agarrar esa tarea. Y los elementos span dentro que tengo, solo voy a poner un poco de margen en esos, como diez pixeles, arriba e abajo, 0 pixeles a la izquierda y a la derecha. Y esto es lo que haremos ahora, estas son las tareas. Esta es la lista de esas tareas. Pero obviamente estas tareas están codificadas. En realidad no estamos usando las tareas que obtuvimos de la API. Entonces déjame mostrarte cómo puedes manejar las plantillas en Angular. Para hacer algo así, volveré al HTML. Vamos a utilizar la directiva llamada MD4. Md4 es un bucle que recorrerá algunos datos específicos. En nuestro ejemplo, recorrerá los datos de tareas. Y para cada tarea específica, vamos a generar un paquete de código como este wrapper de tareas, esta tarea div que tenemos con el contenido dentro. Como solo necesitaremos una de estas, en realidad voy a eliminar estas dos tareas. Esto era, estas eran solo la tarea ficticio para que pudiera mostrarla. ¿ Cómo podemos mirar? Pero ahora usemos esa energía para directriz sobre un acuerdo. Voy a usar star luego mg para usar ese bucle. Entonces aquí recorreré mis tareas. Entonces para cada tarea voy a obtener la variable de la vida tarea por ejemplo, esto aquí puedes nombrarla como desees. Voy a limitar tarea para una convención de nomenclatura. Entonces vamos tarea o tareas. Entonces ahora estamos recorriendo estos, a través de todas las tareas. Y todo aquí dentro será, lo va a generar cinco veces porque tenemos cinco tareas. Entonces en vez de para todos esos cinco, solo mostrando este texto, voy a quitar ese aprendizaje Angular. Y aquí voy a usar la tarea en sí. Y en una tarea, sí tengo propiedad de título. Entonces, cada tarea debe tener aquí un título propio. Y ahora aquí está. Tenemos nuestras tareas apropiadas de esa API de marcador de posición JSON. Se puede ver que todas las tareas tendrán su propio título propio y el valor completado junto a las, que aún no se utiliza correctamente. Lo usaremos correctamente en el siguiente video cuando trabajemos con un estilo específico para ello. Pero antes de terminar este video, olvidé que también tenemos sobre la página. Así que agreguemos algo de contenido a esta página Acerca de. Para esta página Acerca de, voy a crear un div, que contendrá la clase de contenido principal. En el interior, realmente creo el párrafo con algún texto de Lorem Ipsum. Este párrafo, permítame agarrar este texto y de hecho copiado pocas veces así. Ahora desde aquí voy a abrir el archivo CSS, agarrar esa clase de contenido principal que tenemos. Voy a establecer el ancho para que sea de 900 píxeles y también el margen para que sea 50 píxeles arriba y abajo fuera de tu izquierda y derecha. Con esto aquí, con nuestra página de inicio casi terminada. También tendremos el acerca terminado, bueno, Acerca de la página terminada también. Para la página Acerca de, no deseo mostrar nada mucho porque todo el contenido de la aplicación de tareas sucederá en una página de inicio. Pero como ya tenemos esta página Acerca de, vamos a ponerle un poco de contenido ficticio. Se puede jugar con él. Puedes usar algunas imágenes. Podrías, por ejemplo, establecer el título e incluso utilizar las tareas desde aquí, también una página Acerca de. Depende de ti. Pero para el siguiente video, en realidad trabajaremos con el estilo. Para que puedas ver qué estilo diferente podemos usar en Angular. Y también, ¿cómo podemos usar estilo dinámico también para cada elemento específico? 10. Aplicar estilo: Entonces, ¿cuáles son esos diferentes estilos que podemos usar en Angular? Bueno, antes que nada, cuando generamos nuestra aplicación, ya viste que podías elegir un formato de hoja de estilo diferente como CSS, Sass, less, y así sucesivamente. Pero también a la hora de diseñar tu app, también tienes diferentes métodos. Entonces, por ejemplo, si abriera este angular, ese archivo JSON, en este archivo, aquí hay una matriz Styles. De hecho, podríamos importar aquí estilos externos como de bibliotecas de terceros como Bootstrap o tailwind. Al lado de eso. En nuestra aplicación, también deberíamos tener estos estilos ese archivo CSS, este es un archivo de estilos globales y ya puedes ver el comentario aquí que puedes agregar los estilos globales a este archivo y también importar otros archivos de estilos. Esto aquí es muy útil cuando se trabaja con SAS, por ejemplo. Para que puedas importar todos tus propios archivos que tengas en un archivo junto a la deuda. Si me fuera a casa. Dentro del componente home, podemos encontrar un archivo CSS, por lo que somos capaces de darle estilo a cada componente con su propio estilo específico. Y si le daría estilo a algo específico en este componente, bueno, ese código CSS solo es específico del componente de deuda, por lo que no se pasará a otros componentes. Y obviamente hay estilos inline que ya podemos usar en HTML. Pero también podemos utilizar aún más estos estilos en línea para algunos estilos específicos para nuestros elementos específicos que deseamos. Entonces, por ejemplo, sí tengo estas tareas en mi pantalla, y algunas de esas tareas están realmente completadas, pero no estoy indicando eso aquí en absoluto. Se acaba de completar el texto aquí. Entonces ahora voy a usar esos estilos en línea para estilizar solo las tareas específicas que se completan con la línea a través de estos textos. Entonces, para hacer tal cosa en mi texto completado aquí, puedo usar estos corchetes angulares y usar el estilo aquí. Por esto, estoy vinculando el atributo style de este elemento span. Aquí, usaré punto y luego usaré decoración de texto, lo que significa que estoy apuntando al atributo específico de decoración de texto. He escrito mal aquí. Decoraciónde texto. Sí. Y voy a poner eso para que sea igual aquí. Lo que voy a hacer, comprobaré si mi tarea está concluida. Así podría comprobar si es verdad o simplemente tareas que completaron. También comprobaremos si el valor es verdadero. Si ese es el caso, voy a usar la línea para gobernar el estilo aquí. Escribió mal otra vez, usted tiene. Y si ese no es el caso, solo usaré cadena vacía aquí, así que no hay estilo aquí en absoluto. Ahora en mi pantalla, realidad puedo ver que estas completadas, esta tarea. Tiene este valor terminado. Ya está terminada la tarea, lo cual es genial. ¿ Cómo podríamos más, trabajaremos con esta aplicación de tareas. Bueno, sería bueno que realmente pudiéramos completar o incompletar una de nuestras tareas. Entonces para eso, me mudaré a casa ese componente dot txt file. Y aquí voy a crear un método. Entonces después de este motor en él, voy a crear un método público porque este método se utilizará fuera de este archivo. Y el método dirá tarea completa. El método no devolverá nada atrás, por lo que aquí será un método void. Esta tarea completa esperará que se le pase la tarea. Y la tarea debe tener su propio tipo propio, que es el modelo de tareas que ya creamos. Y lo que voy a hacer, voy a agarrar esa tarea y un valor terminado en ella. Y lo voy a poner igual a, bueno, solo invertido. Entonces tarea punto completado de nuevo con este signo de exclamación al inicio. Entonces esto significa que si el valor completado es falso, será cierto. Si es verdad, entonces será falso. Para que así pudiéramos completar una tarea inconclusa todo de una sola vez. Entonces, ¿cómo podríamos usar esta tarea completa ahora? Bueno, en mi casa, ese componente, ese archivo HTML, lo usaré aquí mismo cuando haga clic en este texto completado. Antes que nada, déjame bajar esto un poco para que veas todo con claridad. Entonces tenemos nuestro estilo aquí y aquí, ahora usaré clic evento. Para usar el evento click, solo usamos llaves aquí y tenemos opciones para diferentes eventos. Utilizaré el evento click, y una vez que se haga clic en este texto, usaré ese método de tarea completa que actualmente hay un error porque esta tarea completa realmente espera una tarea específica. Entonces aquí solo voy a pasar la tarea específica de nuestra regla, de nuestra tarea, nuestro NG for loop. Ahora de vuelta a mi aplicación aquí. Si pulsara en, por ejemplo, este texto completado, podemos ver que es un poco completo que Vamos a mover su valor de falso a verdadero. Y si el valor es cierto, entonces tendremos que alinear esa decoración de texto . Por lo que aquí estamos completando nuestras tareas. También, podría hacer clic nuevo para completar esas tareas también. Entonces con esto, viste lo simple que es con solo una función en el poco de estilo en línea para tener estilos específicos para cada una de nuestras tareas en nuestra matriz. Y con esto de aquí, estamos terminados. Esto es, esta es nuestra aplicación, pero todavía estamos aquí. Una cosa que hacer, y eso es el despliegue. 11. Implementación: Entonces al desplegar la aplicación Angular, escuchamos múltiples opciones para hacer eso. Además, antes de desplegarnos, hay un par de pasos que debemos encargarnos. Por ejemplo, deberíamos construir nuestra aplicación. Como saben, nuestra aplicación actual que escuchamos, bueno, todos los componentes son en realidad archivos TypeScript. mecanografiado es algo que no es legible en un navegador. El navegador lee JavaScript. Entonces, al construir la aplicación Angular, también compilaremos el código TypeScript en nuestro código JavaScript. Y es por eso que Angular es framework JavaScript a pesar de que usa tipos. Entonces, ¿dónde podemos desplegar esta singular aplicación? Bueno, hay múltiples opciones. Podríamos simplemente desplegarlo, por ejemplo, a Netlify, o podríamos construir algo de plata personalizado y desplegar todo junto a Heroku. Pero probablemente tomaré el enfoque más fácil aquí, que es el despliegue en Firebase. Ese enfoque también es más profesional porque el Firebase se usa muy a menudo con Angular. Entonces, ¿por qué Firebase? Firebase y angular will, ambos son en realidad productos de Google. Por muertos. Esos están muy bien conectados entre sí. Por lo que es realmente fácil implementar la aplicación de Inglaterra en Firebase. Firebase es un producto de Google, nos ofrecerá muchas características diferentes. Nos puede ofrecer como base de datos en tiempo real o una tienda de bomberos, su propia base de datos. Nos puede ofrecer un hosting que usaremos en este video. Bueno, para publicar nuestra aplicación en Firebase Hosting. Hay un montón de diferentes características y productos que los usuarios de Firebase. Y verás esos Wellstone cuando entre de hecho en la Firebase. Entonces, antes de que hagamos algo aquí, asegúrate de tener una cuenta de firebase. Así que toma tu correo electrónico y regístrate en Firebase. Es gratis, así puedes hacerlo. Una vez que tengas la configuración de tu cuenta, puedes seguir este video e implementar tu aplicación de tareas. Entonces, si tienes tu propia cuenta de Firebase, deberías ser redirigido a este espacio de trabajo de consola de Firebase. Así que aquí dentro, en realidad podemos crear un proyecto. Bueno, un proyecto de Firebase. Ya puedes ver que tengo algunos proyectos ficticios de tutoriales anteriores, pero centrémonos en este. Entonces, para crear el proyecto, da clic en este Agregar proyecto. Obviamente en, aquí dentro, debemos escribir el nombre del producto para que pierda tarea. El nombre será Task up, pero en realidad habrá un id específico asignado a ese proyecto. Por lo que será único para tu, tu perfil. Desde aquí, puedo hacer clic en Continuar, y luego nos preguntan sobre el Google Analytics. Así se utilizará Google Analytics para que Firebase pueda configurarlo automáticamente para nosotros. Deshabilitaré este año porque en realidad no usamos Google Analytics y nuestro límite de tareas es una aplicación muy sencilla. Así que simplemente podemos ir y crear el proyecto aquí. Puedes esperar un poco, y pronto se creará el proyecto. Después de eso, deberías ser redirigido al tablero de tu proyecto. Bueno, ¡Ups! Mi error. No estabas listo dirigido. Por lo que debes hacer clic en estos botón Continuar para resucitar. Y aquí está. Esto es en realidad un proyecto. Este es tu proyecto. Vamos a ponernos el muro, a ver qué tenemos en este proyecto de Firebase. Esto no es importante para este tutorial, pero es muy bueno saberlo porque Firebase es un producto muy alto por ahí y se usa muy a menudo. Entonces aquí, antes que nada, podemos comenzar con Firebase implementando una de nuestras aplicaciones como iOS, Android, VAB, incluso las aplicaciones unity y flatter son compatibles con Firebase. Además, en el lado izquierdo, tenemos diferentes opciones. Si alterno esta compilación, hay todo lo que va a necesitar nuestra aplicación. Básicamente, tenemos autenticación específica, tenemos base de datos, tenemos una base de datos en tiempo real. Hay extensiones, almacenamiento, hosting y muchas otras cosas, incluso aprendizaje automático. Ahora bien, esto es solo sobre el proyecto, pero si iría a lanzar y monitorear, esta es esa parte con el analytics, comprobará el rendimiento de la aplicación para que puedas ver si hay cualquiercaída junto a la deuda. El análisis en sí, el Google Analytics, está completamente convertido aquí. Así tendrás tu propio dashboard y podrás seguir junto con el tiempo real, tus eventos específicos, tus conversiones, puedes seguir básicamente todo dentro del dashboard de Firebase. Y por último, hay una sección comprometida, que se utiliza principalmente con fines de mercadotecnia. Botón nivel anexo, yo diría que hay pruebas AB que puedes configurar, llegar a tu aplicación. Es decir, agrega más de lo que puedas conectar y de hecho tener tus anuncios directamente en tu aplicación presentando. Y hay mucho más que ver con eso. Aquí puedes ver todos los productos que realmente admite Firebase, y eso es un buen montón de productos. Necesitas saber que cada uno de estos es básicamente un producto separado que es compatible con este producto global de Firebase, lo cual es increíble. Entonces volveré a la visión general de mi proyecto. Y podemos empezar desde aquí. Y me gustó una vez más, antes de hacer nada con la Firebase y conectamos nuestro proyecto con la Firebase. Deberíamos construir nuestra aplicación. Deberíamos compilar ese TypeScript en JavaScript. Para hacer eso, simplemente puedes usar NG build. En versiones anteriores de Angular, también hay que usar dash, dash prod. Esta es una bandera que indicará que necesita construir para la producción. Pero en esta versión, lo hará por defecto. Así que solo usa el comando de n g build para construir realmente tu proyecto. Si la compilación funcionó con éxito dentro de tu proyecto, deberías tener una nueva carpeta llamada beast para su distribución. Y dentro debería ser o aplicación de tarea, pero esta vez en el código JavaScript, bueno, el código está bastante liado, minimizado, así que es difícil de leer, pero eso es prácticamente todo. Ahora tenemos nuestra aplicación de distribución, bueno, nuestra aplicación lista para ir a producción. Ahora de vuelta a nuestra visión general del proyecto. Dentro de aquí entraré en esta sección de compilación y seleccionaré hosting. Ahora, dentro del hosting, deberíamos habilitarlo o comenzar con él. Entonces voy a hacer click en esto y básicamente están los pasos que debes dar. En primer lugar, debemos asegurarnos de que tenemos las herramientas de Firebase instaladas globalmente de la misma manera que lo hicimos para Angular CLI, ya que Firebase en realidad tiene su propia herramienta CLI que ayúdanos con las aplicaciones de Firebase. Bueno, productos de Firebase, ya tengo instaladas estas herramientas de Firebase, pero seguiré con esto. Para que puedas ver el proceso en sí. Ahora en el terminal, realidad voy a quitar esto, voy a borrar esta parte del terminal, y luego voy a pegar ese npm instalar dash g para globalmente y Firebase para golpear Enter y esperar paraque se instale. Ahora, una vez que se instaló, volveré a despejar mi terminal. Ahora, lo siguiente, debido a que tenemos instaladas las herramientas de Firebase, podemos usar el método de inicio de sesión de Firebase para realmente iniciar sesión tu propia herramienta CLI V a la Firebase en la web. Así que asegúrate de ejecutar este método. También escribí mal el inicio de sesión de Firebase. Y asegúrate de ejecutar este método, serás redirigido a la versión web del login. Ingresarás con tu cuenta adecuada y podrás volver aquí y seguir trabajando con esta herramienta CLI. Para mí, ya estoy conectado con mi usuario, así que realmente no necesito hacer eso. Pero lo que tenemos que hacer es inicializar el proyecto Firebase en nuestra aplicación. Para ello, debo ejecutar una Firebase en ella para inicializarla. Entonces Firebase solo va a pedir confirmación o ya estamos listos para continuar e iré sí, aquí. Ahora aquí adentro, tal vez esto se acerque bastante. Déjame alejar un poco para que lo veas. Pero aquí, tenemos diferentes productos de Firebase que podemos usar como base de datos en tiempo real vía hosting de funciones de restauración. Esta parte es lo que necesitamos. Además, hay dos tipos de hosting. Una es alojar directamente desde GitHub. Y esto, el primero es configurar los archivos que deseamos publicar el hosting. Y opcionalmente podríamos configurar el GitHub. Y yo iré con la muerte. Entonces aquí voy a golpear espacio para seleccionarlo y luego Enter para confirmarlo. Ahora una vez más aquí ahora tenemos opción de utilizar nuestro propio proyecto específico. Así podremos usar proyecto existente, crear un nuevo proyecto con las herramientas de Firebase, The Fighter basado en el proyecto existente de Google Cloud Platform. Pero no me voy a molestar con eso. Definitivamente usaremos proyecto existente porque ya creamos la aplicación de tareas. Y ahora aquí deberíamos ver la lista de nuestros proyectos. Y voy a ir con esta tarea arriba. Ahora nos preguntan, ¿qué quieres usar como tu directorio público? Lo que básicamente están diciendo es qué parte de tu directorio de roles debemos desplegar en hosting. Y para la deuda, esa será nuestra parte más profunda. Bien dist carpeta y aplicación de tareas dentro porque esta es la aplicación viable real en la web. Entonces para hacer eso, voy a perder aquí esta y luego recortar la tarea. En Idaho. Si puedes ver esto correctamente, alejaré un poco aún más. Entonces esta tarea de barra arriba. Ahora podemos configurar esta aplicación como una aplicación de una sola página. Bueno, Angular es un framework para aplicaciones de una sola página. Entonces iré sí, aquí también. Ahora, ¿deseamos configurar la compilación automática y la implementación con pozo?, despliega con regalo up. Y esta es esa parte opcional. Entonces voy a ir no aquí porque no tenemos repositorio GitHub para este proyecto en absoluto. Ahora bien, esto es una especie de advertencia o un mensaje de error como ese. El archivo index.HTML ya existe en nuestra aplicación de tareas. Y esa es más o menos la verdad en nuestro disco. Entonces barra tope de tarea, tenemos nuestro archivo index.HTML, que es básicamente nuestro contenido HTML. Pero aquí se nos pide que lo hagamos. Deseamos sobrescribir eso. Bueno, no, todavía deseamos mantener nuestro contenido HTML de nuestra aplicación. Y con esto, inicializamos con éxito el proyecto Firebase. Bueno básicamente conectamos nuestra aplicación angular con el proyecto Firebase. Entonces solo hay una cosa más que hacer para implementarlo realmente en el hosting. Voy a aclarar esto aquí. Ahora voy a hacer zoom un poco. Para desplegarlo. Simplemente podemos usar Firebase deploy. Entonces, ¿cómo sabrá Firebase realmente lo que necesita implementar? Mientras que aquí, cuando inicializamos el proyecto con Firebase, en realidad obtuvimos dos archivos nuevos. El primer archivo es en realidad el proyecto que está conectado a esta aplicación, que es nuestro tope de tareas. Y el punto json de Firebase es la configuración del proyecto. Por ejemplo, lo que se debe implementar es que esta aplicación de tareas de barra diagonal. Esto es lo que configuramos. Hay reescrituras que podemos hacer. Hay encabezados que podemos establecer aquí y así sucesivamente y así sucesivamente. Pero esta es una configuración básica que se la dirá a Firebase, bien, esto es lo que deseo desplegar a todo el asunto. Así que simplemente podemos continuar aquí, desplegar Firebase, golpear Enter, y solo esperar a que lo despliegue. Ahora una vez que todo esté desplegado, podríamos, en realidad obtendremos esta URL ficticio directamente a nuestras aplicaciones para que podamos abrirla. Pero no voy a hacer eso. Regresaré a mi Firebase aquí. Como ahora tenemos un alojamiento de configuración, realmente no necesitamos dar seguimiento con estos pasos porque ya hicimos esos pasos. Así que sólo vamos a ir x aquí. Todo el asunto en sí. Podría refrescar la página. Y en un sitio de hosting, ya tenemos nuestra Firebase. Bueno, nuestra aplicación angular, podemos ver, bueno ya no tenemos ese botón de Empezar, pero en realidad nuestra aplicación en la parte inferior veremos también el historial de lanzamientos y también diferentes canales que podemos usar. Pero aquí, si me gustaría hacer clic en esta URL, se abrirá nuestra aplicación en vivo. Por lo que esta aplicación está completamente desplegada en Firebase y lista para ser utilizada. Están listos para que un mundo lo vea. Y podemos ver que nuestras llamadas HTTP también funcionan porque estamos obteniendo los datos de las llamadas HTTP. Y también somos capaces de completar o incompletar que nuestro ruteo está funcionando. Cuando cambio la ruta, hay un contenido en una página diferente, pero eso es prácticamente todo. Entonces con esto aquí chicos, pudimos finalizar nuestra aplicación de tareas y de hecho desplegamos en Firebase. Ahora, saltemos todos al siguiente video para poder darte las gracias propiamente dichas. 12. Gracias y adiós: Bueno, eso es más o menos. Gracias una vez más por tomar este curso en primer lugar. Si te quedaste al final de estas puntuaciones, en realidad tienes tu propia aplicación de tareas angulares construida e implementada. Ahora, puede usar esa aplicación de tareas para su propio portafolio a medida que implementamos la aplicación. Así que realmente te puede ayudar a lo largo tu carrera mientras construimos esa aplicación de tareas, sinceramente espero que aprendas algo nuevo, o al menos que actualices tu conocimiento de ello a través de esto aplicación. Y trabajamos con muchas características principales diferentes de componentes Angular, Servicios, módulo HTTP, enrutamiento, etc. Pero lo que debes saber también es que está pasando mucho más que solo en mi canal de YouTube. En realidad se puede encontrar la serie angular is central donde vamos a todas las características que Angular tiene para ofrecernos. Y si te interesa el material, esa también es la serie Angular Material para ti también. Ahora una vez más, antes de cerrar este curso, bueno, mi nombre es Stefano matrimonio, y tengo más de siete años de experiencia en desarrollo web. Al lado de eso, fui tu instructor a través de este curso. Y como mencioné, junto a estos cursos de Skillshare, también escucho mi canal de YouTube llamado numérico. Así que asegúrate de comprobarlo también. Además, si quieres ver más cursos de mi parte aquí en Skillshare, puedes visitar mi perfil y seleccionar uno de mis cursos que tengo ahí. Por ejemplo, ahí también hay curso Angular. Hay otros cursos para JavaScript, Bootstrap Node JS, JS, y así sucesivamente. Pero con esto, estamos prácticamente terminados. Gracias a todos una vez más, gracias por tomar este curso. Terminando el curso, en realidad, también asegúrate de presentar tus propios proyectos y que construyas a través estas puntuaciones en la sección de proyectos de este curso. todos juntos podamos ir a esos, hablar de esos tal vez también tienes algunas preguntas específicas que podría responder, pero gracias a todos una vez más, y los veo en mis otros cursos. Adiós.