CursosEmpresasBlogLiveConfPrecios

Usando librerías que NO soportan TypeScript

Clase 23 de 24 • Curso de TypeScript

Clase anteriorSiguiente clase

Contenido del curso

Introducción a TypeScript

  • 1
    Por qué usar TypeScript

    Por qué usar TypeScript

    07:25 min
  • 2
    TypeScript vs. JavaScript

    TypeScript vs. JavaScript

    05:45 min
  • 3
    Configurado nuestro proyecto

    Configurado nuestro proyecto

    05:51 min
  • 4
    Atrapando bugs

    Atrapando bugs

    05:11 min
  • 5
    El compilador de TypeScript

    El compilador de TypeScript

    12:51 min
  • 6
    Veamos el TSConfig.json

    Veamos el TSConfig.json

    09:28 min

Tipos de datos primitivos

  • 7
    Qué es el tipado en TypeScript

    Qué es el tipado en TypeScript

    06:12 min
  • 8
    Tipos inferidos

    Tipos inferidos

    11:10 min
  • 9
    Numbers

    Numbers

    15:04 min
  • 10
    Booleans

    Booleans

    06:51 min
  • 11
    Strings

    Strings

    06:46 min
  • 12
    Arrays

    Arrays

    09:14 min

Tipos de datos especiales

  • 13
    Any

    Any

    10:17 min
  • 14
    Union Types

    Union Types

    08:10 min
  • 15
    Alias y tipos literales

    Alias y tipos literales

    08:55 min
  • 16
    Null y Undefined

    Null y Undefined

    11:59 min
  • 17
    Funciones

    Funciones

    10:34 min
  • 18
    Retorno de funciones

    Retorno de funciones

    08:34 min
  • 19
    Objetos en funciones

    Objetos en funciones

    09:24 min
  • 20
    Objetos como tipos

    Objetos como tipos

    05:20 min
  • 21
    Módulos: import y export

    Módulos: import y export

    12:11 min
  • 22
    Usando librerías que soportan TypeScript

    Usando librerías que soportan TypeScript

    06:45 min
  • 23
    Usando librerías que NO soportan TypeScript

    Usando librerías que NO soportan TypeScript

    Viendo ahora

Próximos pasos

  • 24
    Toma el Curso de Tipos Avanzados y Funciones en TypeScript

    Toma el Curso de Tipos Avanzados y Funciones en TypeScript

    01:01 min
Tomar examen
Resumen

El ecosistema de TypeScript ha creado unos módulos para agregar manualmente el tipado a las librerías que no tienen soporte de tipos.

Por ejemplo, si quieres trabajar con la librería lodash, en Visual Studio Code se te indicará que instales un sistema de tipos para que puedas desarrollar sin problemas desde TypeScript:
Error al queres utilizar lodash en TypeScript

Contribución creada por: Martín Álvarez.

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads
        Migdualy Alejandra Gonzalez Martinez

        Migdualy Alejandra Gonzalez Martinez

        student•
        hace 4 años

        Ame el curso

          Gustavo Pú

          Gustavo Pú

          student•
          hace 4 años

          x2 ❤️

          Cristian Clavijo

          Cristian Clavijo

          student•
          hace 4 años

          Reeeee confirmo :D

        Alex hernandez mitre

        Alex hernandez mitre

        student•
        hace 4 años

        Excelente Ts, excelente profesor y excelente curso 10/10.

        César Palma

        César Palma

        student•
        hace 4 años

        Como saber si la librería no tiene el soporte de tipos integrados, pero si tiene un modulo de tipos para dar soporte.

        Screenshot_3.png
        Carlos Andrés Jaramillo Villa

        Carlos Andrés Jaramillo Villa

        student•
        hace 4 años

        tanto tiempo temiendole a TS solo por no haber tenido un buen tutor que lo hiciera ver que es sencillo (por lo menos las bases y fundamentos). Muchas gracias por el curso profe.

          Jose Imbacuan

          Jose Imbacuan

          student•
          hace 3 años

          total

          Jonathan Javier Barsky

          Jonathan Javier Barsky

          student•
          hace 3 años

          totalmente

        Brayhan Andres Jaramillo Castaño

        Brayhan Andres Jaramillo Castaño

        student•
        hace 4 años

        Muy buen curso

        Gustavo Pú

        Gustavo Pú

        student•
        hace 4 años

        Les comparto el último código del curso

        import _ from 'lodash'; const data = [ { username: 'nico', role: 'admin' }, { username: 'Valentina', role: 'seller' }, { username: 'Zulema', role: 'seller' }, { username: 'Santiago', role: 'seller' } ] const rta = _.groupBy(data, (item) => item.role) console.log(rta)
          Pol Valle

          Pol Valle

          student•
          hace 3 años

          Gracias

        Cesar Eduardo Valle Pino

        Cesar Eduardo Valle Pino

        student•
        hace 4 años

        Excelente, desconocía que se pudieran utilizar librerías no soportadas.

        Raycris Maldonado

        Raycris Maldonado

        student•
        hace 3 años

        Para utilizar lodash con ts, si no les sale en el editor como mostró el profesor, aquí les dejo el comando y el import que necesitan

        import * as _ from "lodash" npm i @types/lodash
          Walter Omar Barrios Vazquez

          Walter Omar Barrios Vazquez

          student•
          hace 3 años

          Excelente aporte, gracias!

        Manuel Roberto Serrano Torres

        Manuel Roberto Serrano Torres

        student•
        hace 4 años

        Es curioso aprendí Ts a la mala hace como 1 año y medio y más o menos lo usaba como por instinto... Gracias Tio Platzi por este Curso. <3

        Gustavo Garcia Luna

        Gustavo Garcia Luna

        student•
        hace 4 años

        Excelente Curso ya puedo agregar TypeScript al CV jejeje. A seguir practicando y aprendiendo TS.

        Aaron Contreras Garibay

        Aaron Contreras Garibay

        student•
        hace 4 años

        ¿si el ecosistema no tiene un tipado para una libreria, que se hace?

          Nicolas Molina

          Nicolas Molina

          teacher•
          hace 4 años

          Hola, en ese caso que no encuentras soporte de esa librería ni siquiera con @types/your-lib te toca trabajar esa librería sin tipado como no harías normalmente en JS.

          Angel Solis

          Angel Solis

          student•
          hace 4 años

          Permítame corregirlo profesor. Sí hay forma de trabajar con ellos con tipado sin que exista un archivo de definición @types/your-lib. Puedes crear tu propio archivo de definiciones index.d.ts en la raíz del proyecto, y declarar el tipado requerido del respectivo módulo de esta forma:

          declare module 'postman-runtime' { export declare class Runner { constructor(...) } ... }
        Fernando Orozco Velasquez

        Fernando Orozco Velasquez

        student•
        hace 2 años

        Actualmente me aparece que Lodash ya tiene soporte para TypeScript, lo agregaron hace 2 semanas! 🥳

        Screenshot 2023-10-02 at 23.52.24.png

        Andres López

        Andres López

        student•
        hace 3 años

        Pasar de la sintaxis de require() a la de EcmaScript modules:

        // Antes var _ = require('lodash'); // Después import _ from 'lodash;

        VS Code va a indicar que el módulo no tiene un sistema de tipos y va sugerir la instalación de uno. Ejemplo:

        npm i --save-dev @types/lodash

        Estos módulos forman parte del ecosistema de TS y permiten agregar tipado a librerías que no lo tienen.

        Juan David Moreno Rodriguez

        Juan David Moreno Rodriguez

        student•
        hace 2 años

        nunca pensé que a final de cuentas, si me gustaria incluir TS a mis skills xd, muchas gracias, excelente curso 10/10

        Marcos Manuel López Castro

        Marcos Manuel López Castro

        student•
        hace 4 años

        Pensé que TS era algo del otro mundo. Es genial y ayuda mucho con esos bugs que pasan "sin ser vistos". Excelente y muy explicado el curso.

        Diana Carolina Moncada Bohórquez

        Diana Carolina Moncada Bohórquez

        student•
        hace 3 años

        En definitiva Nicolas Molina es uno de los mejores profesores de Platzi. Explica super bien, da a entender, tiene buena documentación en la zona de recursos y lo más importante, te motiva a practicar. Soy principiante en el uso de TypeScript y me siento muy afortunada de haber tomado este curso. Muchas gracias!

        Cristian Fernando Villca Gutierrez

        Cristian Fernando Villca Gutierrez

        student•
        hace 4 años

        Hace mucho tiempo no disfrutaba tanto hacer un curso

        Julian David Vidal González

        Julian David Vidal González

        student•
        hace 3 años

        Osea que es mejor usar "import" en vez de "require"?

          Juan Carlos Montilla Sánchez

          Juan Carlos Montilla Sánchez

          student•
          hace 3 años

          Hola, Julian.

          No, sino que TypeScript utiliza su la programación modular y lo que hace es que crea aparte un modulo donde transforma las librerías con require a import.

          Pero ninguna es mejor que la otra, simplemente es el patrón que utiliza TypeScript.

          Saludos.

        Carlos Ponce

        Carlos Ponce

        student•
        hace 3 años

        ¿Pero el @type es algo que alguien tiene que crear verdad? tengo una libreria que no tiene soporte a TS y la estaba usando en un proyecto de TS, pero yo sé que no he hecho un @type para ella entonces me pregunto ¿cómo puedo hacer para subirlo a npm y que los usuarios lo puedan usar?

          Juan Carlos Montilla Sánchez

          Juan Carlos Montilla Sánchez

          student•
          hace 3 años

          Hola, Carlos.

          Según entiendo, el @type lo generaría TypeScript por defecto. Y con respecto a subir la librería, no hay problema, ya que al no ser soportada por TS, se puede utilizar en JS o se puede crear un fork para poder realizar la migration uno mismo y realizar pull request

        Eminson Mendoza

        Eminson Mendoza

        student•
        hace un año
        Para que resuelvan las dudas con AI.