En esta sección, aprenderemos cómo compilar archivos TypeScript (.ts) en archivos JavaScript (.js). La compilación es un paso crucial en el flujo de trabajo de TypeScript, ya que los navegadores y entornos de ejecución como Node.js no entienden TypeScript directamente; necesitan JavaScript.
- Instalación de TypeScript
Antes de compilar, asegúrate de tener TypeScript instalado. Puedes instalarlo globalmente usando npm (Node Package Manager):
Para verificar que la instalación fue exitosa, ejecuta:
- Compilación Básica
2.1. Compilación de un Solo Archivo
Para compilar un archivo TypeScript, usa el comando tsc
seguido del nombre del archivo:
Esto generará un archivo archivo.js
en el mismo directorio.
Ejemplo Práctico
Supongamos que tienes un archivo hello.ts
con el siguiente contenido:
Para compilar este archivo, ejecuta:
Esto generará un archivo hello.js
con el siguiente contenido:
2.2. Compilación de Múltiples Archivos
Puedes compilar múltiples archivos a la vez especificándolos en el comando:
- Configuración del Compilador con
tsconfig.json
tsconfig.json
Para proyectos más grandes, es conveniente usar un archivo de configuración tsconfig.json
. Este archivo permite definir opciones de compilación y especificar los archivos a compilar.
3.1. Creación de tsconfig.json
Puedes crear un archivo tsconfig.json
en el directorio raíz de tu proyecto ejecutando:
Esto generará un archivo tsconfig.json
con una configuración predeterminada.
3.2. Ejemplo de tsconfig.json
Aquí tienes un ejemplo básico de tsconfig.json
:
{ "compilerOptions": { "target": "es5", // Versión de JavaScript a la que se compilará "module": "commonjs", // Sistema de módulos a utilizar "strict": true, // Habilita todas las verificaciones estrictas "outDir": "./dist", // Directorio de salida para los archivos compilados "rootDir": "./src" // Directorio raíz de los archivos fuente }, "include": [ "src/**/*" // Archivos a incluir en la compilación ], "exclude": [ "node_modules" // Archivos a excluir de la compilación ] }
3.3. Compilación Usando tsconfig.json
Una vez que tienes un tsconfig.json
, puedes compilar tu proyecto simplemente ejecutando:
El compilador TypeScript leerá las opciones del archivo tsconfig.json
y compilará los archivos especificados.
- Opciones Comunes del Compilador
Aquí hay algunas opciones comunes que puedes usar en tsconfig.json
:
Opción | Descripción |
---|---|
target |
Especifica la versión de JavaScript a la que se compilará (e.g., es5 , es6 ). |
module |
Define el sistema de módulos a utilizar (e.g., commonjs , es6 ). |
strict |
Habilita todas las verificaciones estrictas. |
outDir |
Directorio de salida para los archivos compilados. |
rootDir |
Directorio raíz de los archivos fuente. |
sourceMap |
Genera archivos .map para depuración. |
noImplicitAny |
Lanza un error cuando un tipo no puede ser inferido como any . |
- Ejercicio Práctico
Ejercicio
-
Crea un archivo
greet.ts
con el siguiente contenido:function greet(name: string): string { return `Hello, ${name}!`; } let user = "World"; console.log(greet(user));
-
Compila el archivo usando el comando
tsc
. -
Ejecuta el archivo compilado
greet.js
usando Node.js:node greet.js
Solución
-
Crea el archivo
greet.ts
con el contenido proporcionado. -
Compila el archivo:
tsc greet.ts
-
Ejecuta el archivo compilado:
node greet.js
Deberías ver la salida:
Conclusión
En esta sección, aprendiste cómo compilar archivos TypeScript a JavaScript usando el comando tsc
y cómo configurar el compilador con un archivo tsconfig.json
. La compilación es un paso esencial en el desarrollo con TypeScript, y dominar estas herramientas te permitirá trabajar de manera más eficiente en proyectos de cualquier tamaño.
En el próximo módulo, profundizaremos en los tipos y cómo trabajar con ellos en TypeScript. ¡Sigue adelante!
Curso de TypeScript
Módulo 1: Introducción a TypeScript
- ¿Qué es TypeScript?
- Configuración del Entorno de TypeScript
- Tipos Básicos
- Anotaciones de Tipo
- Compilando TypeScript
Módulo 2: Trabajando con Tipos
Módulo 3: Tipos Avanzados
Módulo 4: Funciones y Módulos
- Tipos de Función
- Parámetros Opcionales y Predeterminados
- Parámetros Rest
- Módulos y Espacios de Nombres
- Decoradores
Módulo 5: Programación Asíncrona
Módulo 6: Herramientas y Mejores Prácticas
- Linting y Formateo
- Pruebas de Código TypeScript
- TypeScript con Webpack
- TypeScript con React
- Mejores Prácticas