Decoradores
Clase 24 de 25 • Curso de TypeScript: Programación Orientada a Objetos y Asincronismo
Contenido del curso
Clase 24 de 25 • Curso de TypeScript: Programación Orientada a Objetos y Asincronismo
Contenido del curso
Darío Arrieta
Daniel A.
Luis Angel Flores Galindo
Juan Camilo Cruz Franco
Eliecer Alejandro Molina Vergel
Emilio Nicolás Mendoza Patti
Ruben Ariel Villalobos
Andrés Felipe Eslava Zuluaga
Breyner Estiven Parada Garcés
Eminson Mendoza
David Guevara
Jaime La Rosa
Rosario Martinez
Gilbert Ardila
Josue Cerron Tuesta
Daniel Felipe Merchan Fuquen
Martin Tercero
SANDRO SIMON
Brahyan Antonio Martinez Madera
Andre Huaman Yovera
Ivan Sangueza Alarcon
Javier Mauricio Mora
En realidad vi este curso esperando decorators. Lo he visto mucho y hasta usado, pero a los trancazos en proyectos del trabajo. Esta explicación ayudó bastante uff y genéricos, que no sabía que no sabía.
los decoradores son como las anotaciones en java
Instalacion:
npm install class-validator --save
Yo la verdad esperaba un poco mas de los decoradores, la creación por lo menos... la básica. Espero el curso de creación de decoradores con urgencia a ver qué más de raro se puede aprender.
Faltó el crear decoradores...
Realmente espectacular la parte de genericos, pero medio con sabor a poco la parte de decoradores, estaria bueno agregar un video mas de como crear decoradores
Sinceramente esperaba mas, es una clase de como implementar decoradores mas que nada. Hubiese estado bueno crear al menos uno básico.
// A diferencia de TypeScript, // los decoradores No van a decir los errores de forma inmediata. // Dan feedback hasta el runtime. // Agregan validaciones y comportamientos extra
Para que no tengas que cerrar y abrir VS Code, simplemente vete a la paleta de comandos de VS Code con (ctrl + shift + P) y busca 'Typescript: Restart TS server'. Esto te permite reiniciar las funcinalidades de TS, con esto ya no te aparecerá el error.
Los decorators en TypeScript son una forma de modificar el comportamiento de clases, métodos, propiedades o parámetros. Se utilizan ampliamente en frameworks como Angular para añadir metadatos o funcionalidades de manera declarativa.
Usos de los decorators:
Ejemplos:
Class Decorator:
function LogClass(target: Function) { console.log(`Class: ${target.name}`); } @LogClass class User {}
Method Decorator:
function LogMethod(target: any, propertyName: string, descriptor: PropertyDescriptor) { console.log(`Method: ${propertyName}`); } class User { @LogMethod getName() { return 'User'; } }
Property Decorator:
function LogProperty(target: any, propertyName: string) { console.log(`Property: ${propertyName}`); } class User { @LogProperty name: string; }
Estos ejemplos muestran cómo los decorators permiten una programación más clara y modular en TypeScript.
Hola, tengo una pregunta que me gustaría confirmar. Typescript nos ofrece validación solo de forma estática pero con el decorador si podemos hacer validación en runtime cierto?
Por que al transpilar de typescript a javascript, el código que se ejecuta es javascript y ese ya no aplicaría el tipado en runtime
Exacto, los decoradores son transformados a JavaScript por ese motivo es que se usan con una Class y no con una Interface
nota importante : Es importante tener en cuenta que los decoradores son una característica avanzada y no son necesarios en la mayoría de los casos. Si estás empezando a aprender TypeScript, es posible que no necesites utilizar decoradores hasta que tengas un buen dominio de los conceptos básicos del lenguaje.
me recuerdan a las anotaciones de Springboot
Simplemente genial esta clase!
¿Cuál es el curso de decoradores que mencionó el docente?
nunca salio el curso de decoradores!
Al inicio de esta clase el profe habla de un curso enfocado a decoradores ¿saben si ya existe dicho curso?
Nop :( bueno aun no pero Aca la documentacion
La anotación @IsFQDN en la biblioteca class-validator se utiliza para validar si una cadena es un nombre de dominio totalmente calificado (Fully Qualified Domain Name o FQDN) válido.
.
Un nombre de dominio totalmente calificado es una cadena que representa una ubicación específica en la estructura jerárquica del sistema de nombres de dominio (DNS). Un FQDN consta de varios componentes separados por puntos y sigue un formato específico, como www.example.com o api.myapp.io.
.
Al utilizar @IsFQDN como decorador en una propiedad de una clase, se puede validar que el valor de esa propiedad sea un FQDN válido. Por ejemplo:
import { IsFQDN } from 'class-validator'; class MyClass { @IsFQDN() domain: string; }
En este ejemplo, la propiedad domain de la clase MyClass se validará utilizando la anotación @IsFQDN. Si el valor asignado a domain no cumple con el formato de un FQDN válido, se generará un error de validación.
.
Es importante tener en cuenta que la anotación @IsFQDN solo valida la sintaxis del FQDN, no verifica si el dominio realmente existe en Internet.
Como puedo colocar mensajes personalizados del error?