tutorial - ¿Cuál es el propósito de tsconfig.json?
typescript watch (4)
El archivo tsconfig.json
corresponde a la configuración del compilador de TypeScript (tsc).
Estos enlaces podrían darle detalles sobre estos atributos:
- typescriptlang.org/docs/handbook/tsconfig-json.html
- http://json.schemastore.org/tsconfig
- https://angular.io/docs/ts/latest/guide/typescript-configuration.html#!#tsconfig
Aquí hay algunos consejos:
- target : el idioma utilizado para la salida compilada
- módulo : el administrador de módulos utilizado en la salida compilada.
system
es para SystemJS,commonjs
para CommonJS. - móduloResolución : la estrategia utilizada para resolver archivos de declaración de módulo (archivos
.d.ts
). Con el enfoque denode
, se cargan desde la carpetanode_modules
como un módulo (require(''module-name'')
) - sourceMap : genere o no archivos de mapas de origen para depurar directamente los archivos de TypeScript de la aplicación en el navegador,
- emitDecoratorMetadata : emite o no metadatos de tipo de diseño para declaraciones decoradas en la fuente,
- Decoradores experimentales : habilitan o no el soporte experimental para decoradores ES7,
- removeComments : elimina comentarios o no
- noImplicitAny : permite o no el uso de variables / parámetros sin tipos (implícitos)
Estaba leyendo referencias angulares2 y encontré esto tsconfig.json
. Me gustaría saber qué significan los siguientes parámetros?
{
"compilerOptions": {
"target": "es5",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"exclude": [
"node_modules"
]
}
El archivo tsconfig indica el proyecto como proyecto mecanografiado e incluye opciones sobre cómo compilar los archivos mecanografiados. Para más detalles, visite el sitio https://www.typescriptlang.org/docs/handbook/tsconfig-json.html
Ya hay muchas respuestas, pero me gustaría agregar un punto más por qué tsconfig requirió. Según documentos angulares
TypeScript es un lenguaje primario para el desarrollo de aplicaciones angulares. Es un superconjunto de JavaScript con soporte en tiempo de diseño para herramientas de seguridad de tipos.
Los navegadores no pueden ejecutar TypeScript directamente. Typescript debe ser "transpilado" a JavaScript usando el compilador tsc, que requiere alguna configuración.
Por lo general, agrega un archivo de configuración de TypeScript llamado tsconfig.json a su proyecto para guiar al compilador a medida que genera archivos JavaScript.
Para obtener más información https://angular.io/guide/typescript-configuration
tsconfig.json
significa que el directorio en el que se guarda es la raíz del proyecto TypeScript. El archivo tsconfig.json
especifica los archivos raíz y las opciones de compilación necesarias para compilar el proyecto.
Se espera que el compilador se ejecute según las configuraciones mencionadas:
"target": "es5" => compilará es6 a es5 para que sea compatible con los navegadores.
"module": "system" => especifica las generaciones de código del módulo (commonjs '','' amd '','' system '','' umd '','' es6 ''etc)
"moduleResolution": "node" => Determine cómo se resuelven los módulos
"sourceMap": true => Genera el archivo ''.map'' correspondiente para que se pueda usar en el código de producción para la depuración.
"removeComments": false => Elimina todos los comentarios, excepto los comentarios del encabezado de copia-derecha que comienzan con / *
"noImplicitAny": false => Aumenta el error en las expresiones y declaraciones con un tipo ''any'' implícito.
Si se especifica la propiedad "excluir", el compilador incluye todos los archivos de TypeScript (* .ts o * .tsx) en el directorio y subdirectorios que contienen, excepto aquellos archivos o carpetas que están excluidos.