Tengo un proyecto con archivos js, donde habilité la verificación de tipos en varios módulos (resaltando parámetros incorrectos, etc. de la función importada de un módulo diferente) en VS Code al crear este jsconfig.json:
{ "compilerOptions": { "checkJs": true } }Ahora, leí que TypeScript 4.5 admite archivos mjs https://github.com/microsoft/TypeScript/issues/27957
Así que instalé TypeScript 4.5 beta, nodo 17 y modifiqué jsconfig.json a esto:
{ "compilerOptions": { "module": "node12", "moduleResolution": "node", "checkJs": true } }pero aún no funciona para los archivos mjs, y también aparece este error en jsconfig.json:
El argumento para la opción '--module' debe ser: 'none', 'commonjs', 'amd', 'system', 'umd', 'es6', 'es2015', 'es2020', 'esnext'
¿Alguna idea de cómo habilitar la verificación de tipos para archivos mjs en varios módulos?
Considere usar estas opciones de tsconfig.json:
{ "compilerOptions": { "module": "NodeNext", "target": "ESNext", "moduleResolution": "NodeNext" }, "include": ["**/*.mjs"] }=======
Aquí están TODOS los cambios que hice junto con la adición de compatibilidad con .mjs. No creo que todos sean estrictamente necesarios, pero quiero compartir para completar:
Modifiqué mi secuencia de comandos type-check package.json:
"type-check": "tsc --pretty --noEmit && tsc --pretty --noEmit --project tsconfig.mjs.json",Aquí está mi archivo tsconfig.mjs.json:
{ "extends": "./tsconfig.json", "compilerOptions": { "module": "NodeNext", "target": "ESNext", "moduleResolution": "NodeNext" }, "include": ["**/*.mjs"] }Correr:
yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser --dev yarn remove typescript yarn add typescript # use latestEs probable que obtenga un error que indica que necesita usar la compilación nocturna mecanografiada para verificar el tipo de archivos mjs. Correr:
yarn remove typescript yarn add typescript@next --dev