¿Por qué convertir MJS a TS?
Los desarrolladores convierten .mjs a .ts para obtener comprobación de tipos estática y autocompletado en el editor, manteniendo la misma estructura de módulos ES que ya escribieron.
Cómo convertir MJS a TS
Renombrar a .ts / .mts EASIEST
Cambie el nombre del archivo a .ts (o .mts para forzar la salida ESM); las sentencias import/export funcionan tal cual y puede añadir tipos de forma incremental.
Compilador de TypeScript (tsc) OPEN-SOURCE
Establezca "allowJs": true en el tsconfig.json, luego ejecute tsc para comprobar los tipos y generar JavaScript; active el modo strict una vez resueltos los errores.
Visual Studio Code FREE
Abra el archivo .ts renombrado en VS Code; su servicio integrado de TypeScript detectará los tipos faltantes y ofrecerá correcciones rápidas para añadir anotaciones.
esbuild OPEN-SOURCE
Ejecute esbuild file.ts --outfile=file.js para eliminar los tipos rápidamente para una compilación, aunque esbuild no realiza comprobación de tipos.
Acerca de estos formatos
Un archivo .mjs es código fuente de JavaScript que Node.js trata como un módulo ECMAScript, lo que significa que utiliza import y export en lugar del require de CommonJS. La extensión…
Abrir detalles de .MJS →Un archivo .ts es un MPEG Transport Stream: un formato contenedor de video proveniente de televisión digital, grabaciones de PVR, videocámaras AVCHD y transmisión HLS. VLC media player lo…
Abrir detalles de .TS →Calidad y qué observar
- Renombrar hace que el archivo sea un TS válido, pero no gana seguridad real hasta que añada anotaciones y habilite las comprobaciones
strict. tscinforma de errores de tipo que el JavaScript convencional ignoraba, por lo que es posible que deba corregir losanyimplícitos y las importaciones sin tipos.- esbuild transpila sin comprobación de tipos, así que use
tsc --noEmitjunto a él para detectar realmente los errores de tipo.
Preguntas frecuentes
¿Es `.mjs` un TypeScript válido?
.mjs renombrado compila como .ts incluso antes de añadir cualquier anotación de tipo.¿Debo usar `.ts` o `.mts`?
.mts cuando quiera que la salida siga siendo un módulo ES independientemente del package.json. Use .ts y deje que el tsconfig.json y el tipo de paquete decidan.¿Seguirán funcionando mis importaciones?
import/export se traslada sin cambios a TypeScript. Solo añade información de tipos por encima.¿Cómo ejecuto el TypeScript resultante?
tsc a JavaScript y ejecute eso, o use un ejecutor como tsx o ts-node que transpila sobre la marcha.