tsconfig 文件
使用
tsc --init
快速生成, 参观 docs 阅读有关此文件的详细信息.
json
{
"include": ["相对 tsconfig.json 的文件或文件夹路径"],
"exclude": ["与 include 作用相反"],
"extends": "继承一个配置",
"compilerOptions": {
/* 基础配置 */
// "incremental": true, // 启用增量编译
// "target": "es5", // 指定生成的 ECMAScript 目标版本:“ES3”(默认值)、“ES5”、“ESNEXT” 等等
// "module": "commonjs", // 指定生成的模块代码:'commonjs'、'es2020' 或 'ESNext' 等等
// "lib": [], // 指定要包含在编译中的库文件
// "allowJs": true, // 允许编译 javascript 文件
// "checkJs": true, // 报告.js文件中的错误
// "jsx": "preserve", // 指定 JSX 代码生成:“preserve”、“react” 等等
// "declaration": true, // 生成相应的 “.d.ts” 文件
// "declarationMap": true, // 为每个相应的 “.d.ts” 文件生成一个源映射
// "sourceMap": true, // 生成相应的 “.map” 文件
// "outFile": "./", // 将输出连接并发送到单个文件
// "outDir": "./", // 将输出结构重定向到目录
// "rootDir": "./", // 指定输入文件的根目录。用于使用 --outDir 控制输出目录结构
// "composite": true, // 启用项目编译
// "tsBuildInfoFile": "./", // 指定用于存储增量编译信息的文件
// "removeComments": true, // 不要向输出发出注释
// "noEmit": true, // 不要发出输出
// "importHelpers": true, // 从“tslib”导入发射帮助程序
// "downlevelIteration": true, // 当目标为“ES5”或“ES3”时,为“for of”、spread 和 destructuring 中的可迭代项提供完全支持
// "isolatedModules": true // 将每个文件转换为一个单独的模块(类似于“ts.transfileModule”
//
//
// /* 严格类型检查选项 */
// "strict": true, // 启用所有严格的类型检查选项。
// "alwaysStrict": true, // 在严格模式下进行分析,并对每个源文件发出 “use strict”
// "noImplicitAny": true, // 在具有隐含 “any” 类型的表达式和声明上引发错误
// "noImplicitThis": true, // 在具有隐含 “any” 类型的 “this” 表达式上引发错误
// "strictNullChecks": true, // 启用严格的空检查
// "strictFunctionTypes": true, // 启用对函数类型的严格检查
// "strictBindCallApply": true, // 对函数启用严格的“绑定”、“调用”和“应用”方法
// "strictPropertyInitialization": true, // 启用对类中属性初始化的严格检查
//
//
// /* 附加检查 */
// "noUnusedLocals": true, // 报告未使用的本地文件的错误
// "noUnusedParameters": true, // 报告未使用参数的错误
// "noImplicitReturns": true, // 当函数中并非所有代码路径都返回值时,报告错误
// "noFallthroughCasesInSwitch": true, // 在switch语句中报告失败案例的错误
// "noUncheckedIndexedAccess": true, // 在索引签名结果中包括“未定义”
// "noImplicitOverride": true, // 确保用“override”修饰符标记派生类中的重写成员
// "noPropertyAccessFromIndexSignature": true, // 需要索引签名中未声明的属性才能使用元素访问
//
//
/* 模块解析相关选项 */
// "moduleResolution": "node", /* 指定模块解析策略:“node” 或 “classic” 等等 */
// "baseUrl": "./", /* 用于解析非绝对模块名称的基目录 */
// "paths": {}, /* 将导入重新映射到相对于“baseUrl”的查找位置的一系列条目 */
// "rootDirs": [], /* 根文件夹的列表,其组合内容表示运行时项目的结构 */
// "typeRoots": [], /* 要包含其中的类型定义的文件夹列表 */
// "types": [], /* 要包含在编译中的类型声明文件 */
// "allowSyntheticDefaultImports": true, /* 允许默认导入没有默认导出的模块 (import * as x from 'x') */
// "esModuleInterop": true, /* 通过为所有导入创建命名空间对象,实现CommonJS和ES模块之间的发射互操作性。 */,
// "preserveSymlinks": true, /* 不要解析符号链接的真实路径。 */
// "allowUmdGlobalAccess": true, /* 允许从模块访问UMD全局。 */
//
//
/* 源映射选项 */
// "sourceRoot": "", /* 指定调试器应定位TypeScript文件的位置,而不是源位置 */
// "mapRoot": "", /* 指定调试器应定位映射文件的位置,而不是生成的位置 */
// "inlineSourceMap": true, /* 发射具有源映射的单个文件,而不是具有单独的文件 */
// "inlineSources": true, /* 将源与源映射一起发射到单个文件中;要求设置“--inlineSourceMap”或“--sourceMap” */
//
//
/* 实验选项 */
// "experimentalDecorators": true, /* 启用对ES7装饰器的实验性支持 */
// "emitDecoratorMetadata": true, /* 为decorator启用对发射类型元数据的实验性支持 */
//
//
/* 高级选项 */
// "skipLibCheck": true, /* 跳过声明文件的类型检查。 */
// "forceConsistentCasingInFileNames": true /* 不允许对同一文件进行大小写不一致的引用 */
}
}
{
"include": ["相对 tsconfig.json 的文件或文件夹路径"],
"exclude": ["与 include 作用相反"],
"extends": "继承一个配置",
"compilerOptions": {
/* 基础配置 */
// "incremental": true, // 启用增量编译
// "target": "es5", // 指定生成的 ECMAScript 目标版本:“ES3”(默认值)、“ES5”、“ESNEXT” 等等
// "module": "commonjs", // 指定生成的模块代码:'commonjs'、'es2020' 或 'ESNext' 等等
// "lib": [], // 指定要包含在编译中的库文件
// "allowJs": true, // 允许编译 javascript 文件
// "checkJs": true, // 报告.js文件中的错误
// "jsx": "preserve", // 指定 JSX 代码生成:“preserve”、“react” 等等
// "declaration": true, // 生成相应的 “.d.ts” 文件
// "declarationMap": true, // 为每个相应的 “.d.ts” 文件生成一个源映射
// "sourceMap": true, // 生成相应的 “.map” 文件
// "outFile": "./", // 将输出连接并发送到单个文件
// "outDir": "./", // 将输出结构重定向到目录
// "rootDir": "./", // 指定输入文件的根目录。用于使用 --outDir 控制输出目录结构
// "composite": true, // 启用项目编译
// "tsBuildInfoFile": "./", // 指定用于存储增量编译信息的文件
// "removeComments": true, // 不要向输出发出注释
// "noEmit": true, // 不要发出输出
// "importHelpers": true, // 从“tslib”导入发射帮助程序
// "downlevelIteration": true, // 当目标为“ES5”或“ES3”时,为“for of”、spread 和 destructuring 中的可迭代项提供完全支持
// "isolatedModules": true // 将每个文件转换为一个单独的模块(类似于“ts.transfileModule”
//
//
// /* 严格类型检查选项 */
// "strict": true, // 启用所有严格的类型检查选项。
// "alwaysStrict": true, // 在严格模式下进行分析,并对每个源文件发出 “use strict”
// "noImplicitAny": true, // 在具有隐含 “any” 类型的表达式和声明上引发错误
// "noImplicitThis": true, // 在具有隐含 “any” 类型的 “this” 表达式上引发错误
// "strictNullChecks": true, // 启用严格的空检查
// "strictFunctionTypes": true, // 启用对函数类型的严格检查
// "strictBindCallApply": true, // 对函数启用严格的“绑定”、“调用”和“应用”方法
// "strictPropertyInitialization": true, // 启用对类中属性初始化的严格检查
//
//
// /* 附加检查 */
// "noUnusedLocals": true, // 报告未使用的本地文件的错误
// "noUnusedParameters": true, // 报告未使用参数的错误
// "noImplicitReturns": true, // 当函数中并非所有代码路径都返回值时,报告错误
// "noFallthroughCasesInSwitch": true, // 在switch语句中报告失败案例的错误
// "noUncheckedIndexedAccess": true, // 在索引签名结果中包括“未定义”
// "noImplicitOverride": true, // 确保用“override”修饰符标记派生类中的重写成员
// "noPropertyAccessFromIndexSignature": true, // 需要索引签名中未声明的属性才能使用元素访问
//
//
/* 模块解析相关选项 */
// "moduleResolution": "node", /* 指定模块解析策略:“node” 或 “classic” 等等 */
// "baseUrl": "./", /* 用于解析非绝对模块名称的基目录 */
// "paths": {}, /* 将导入重新映射到相对于“baseUrl”的查找位置的一系列条目 */
// "rootDirs": [], /* 根文件夹的列表,其组合内容表示运行时项目的结构 */
// "typeRoots": [], /* 要包含其中的类型定义的文件夹列表 */
// "types": [], /* 要包含在编译中的类型声明文件 */
// "allowSyntheticDefaultImports": true, /* 允许默认导入没有默认导出的模块 (import * as x from 'x') */
// "esModuleInterop": true, /* 通过为所有导入创建命名空间对象,实现CommonJS和ES模块之间的发射互操作性。 */,
// "preserveSymlinks": true, /* 不要解析符号链接的真实路径。 */
// "allowUmdGlobalAccess": true, /* 允许从模块访问UMD全局。 */
//
//
/* 源映射选项 */
// "sourceRoot": "", /* 指定调试器应定位TypeScript文件的位置,而不是源位置 */
// "mapRoot": "", /* 指定调试器应定位映射文件的位置,而不是生成的位置 */
// "inlineSourceMap": true, /* 发射具有源映射的单个文件,而不是具有单独的文件 */
// "inlineSources": true, /* 将源与源映射一起发射到单个文件中;要求设置“--inlineSourceMap”或“--sourceMap” */
//
//
/* 实验选项 */
// "experimentalDecorators": true, /* 启用对ES7装饰器的实验性支持 */
// "emitDecoratorMetadata": true, /* 为decorator启用对发射类型元数据的实验性支持 */
//
//
/* 高级选项 */
// "skipLibCheck": true, /* 跳过声明文件的类型检查。 */
// "forceConsistentCasingInFileNames": true /* 不允许对同一文件进行大小写不一致的引用 */
}
}