🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# `tsconfig.json` – TypeScript 编译器配置 > 原文: [https://howtodoinjava.com/typescript/tsconfig-json/](https://howtodoinjava.com/typescript/tsconfig-json/) TypeScript 编译器使用`tsconfig.json`获取用于从 TypeScript 源代码生成 JavaScript 代码的配置选项。 使用`'$ tsc'`命令编译 TypeScript 代码时,编译器将搜索`tsconfig.json`中加载的配置。 ## 创建`tsconfig.json` 在开始使用 TypeScript 之前,请确保已安装它。 为了方便使用,请将其安装为全局依赖项,以便您可以从控制台窗口使用`tsc`命令。 然后使用`'tsc --init'`命令在项目的根文件夹中创建`tsconfig.json`文件。 ```java $ npm install typescript -g //Install typescript $ cd project_root //Go to project's root folder $ tsc --init //Create tsconfig.json in project's root folder ``` 将创建默认的`tsconfig.json`。 ```java { "compilerOptions":{ "target":"es6", "moduleResolution":"node", "module":"commonjs", "declaration":false, "noLib":false, "emitDecoratorMetadata":true, "experimentalDecorators":true, "sourceMap":true, "pretty":true, "allowUnreachableCode":true, "allowUnusedLabels":true, "noImplicitAny":true, "noImplicitReturns":false, "noImplicitUseStrict":false, "outDir":"dist/", "baseUrl":"src/", "listFiles":false, "noEmitHelpers":true }, "include":[ "src/**/*" ], "exclude":[ "node_modules" ], "compileOnSave":false } ``` ## 编译器选项 您必须了解一些重要的编译器选项。 | 选项 | 描述 | | --- | --- | | `allowJs` | 允许编译 JavaScript 文件。 默认值为`false`。 | | `alwaysStrict` | 以严格模式解析并为每个源文件发出“`use strict`”。 默认值为`false`。 | | `module` | 输出模块类型例如 “CommonJS”,“`AMD`”,“`System`”,“`ES6`”,“`ES2015`”或“`ESNext`”。如果`target`属性为`ES3`或`ES5`,则默认值为`CommonJS`; 否则默认为`ES6`。 | | `target` | 指定 ECMAScript 目标版本。 默认值为`ES3`。 | | `moduleResolution` | 确定如何解决模块。 对于`module`,键入`ES6`,`AMD`或`System` - 默认值为 `classic`; 其他`Node`。 | | `sourceMap` | 指示是否生成源映射。 源映射有助于调试。 | | `outDir` | 转储文件的存放位置。 | | `baseUrl`或`paths` | 指示 TypeScript 在哪里可以找到类型文件。 | | `watch` | 用于`livereload`。 这意味着无论何时更改任何源文件,都将重新触发编译过程以再次生成已编译的文件。 | | `experimentalDecorators` | 此选项允许在 TypeScript 项目中使用装饰器。 ES 尚未引入装饰器,因此默认情况下将其禁用。 | > 请遵循[官方页面](https://www.typescriptlang.org/docs/handbook/compiler-options.html)以获得编译器选项的完整列表。 ## 包含和排除选项 这些选项采用一系列全局模式,这些模式需要包含在编译路径中,以便在编译过程中添加或删除文件。 ```java "include":[ "src/**/*", "src/app/shared/**/*", "typings/*.d.ts" ], "exclude":[ "node_modules", "jspm_packages", "application", "system", "dist" ] ``` 将我的问题放在评论部分。 学习愉快!