Ok, los DTOs se pueden anidar. Excelente.
Introducción
¿Ya tomaste el Curso de Fundamentos de TypeScript?
Configuración del proyecto con ts-node
New Types
Enums
Tuples
Unknown type
Never type
Funciones
Parámetros opcionales y nullish-coalescing
Parámetros por defecto
Parámetros rest
Sobrecarga de funciones: el problema
Sobrecarga de funciones: la solución
Interfaces
Interfaces
Estructuras complejas
Extender interfaces
Propiedades de solo lectura
Proyecto
Ejemplo de CRUD
Omit y Pick Type
Partial y Required Type
Readonly Type
Acceder al tipado por indice
ReadonlyArray
Próximos pasos
Toma el Curso de Programación Orientada a Objetos con TypeScript
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Aportes 4
Preguntas 0
Ok, los DTOs se pueden anidar. Excelente.
Les comparto mis apuntes. 😄
Con esta propiedad le decimos TypeScript que todos los parámetros solamente sean de lectura, por ende nos pueden ser mutados a lo largo de nuestro programa.
interface InterfaceName extends Readonly<Interface> {
statements
}
type TypeName = Readonly<TypeOrInterface>;
Podemos utilizar el anidamiento para poder fusionar las distintas características de los diferentes utility types.
interface InterfaceName extends UtilityType1<UtilityTypeN<Interface>> {
statements
}
export interface FindProductDto extends Readonly<Partial<Product>> {
statements
}
Es tan simple como:
export interface GetProductsDto extends Readonly<Partial<Product>>{}
// Ahora todos los campos son de 'solo lectura'
Por si alguien se lo pregunta, la extensión de VSCode de git que utiliza el profesor es GitLens — Git supercharged.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.