tsconfig中常见的编译参数

整理记录一下tsconfig中的一些参数配置
感觉typescript编译时的参数大致分为这几类,一是最基础的编译相关设置,比如输出路径,基础路径
然后typescript最后始终要转换成js,所以有一类参数就是用来控制生成js代码版本、代码格式的;前两类参数是必须要配置好的。
还有些参数是控制typescript编译时对代码检查的有点类似与eslint,检查不通过则会编译报错;同时还会有对typescript代码中语法的检测相关参数
还有些参数是额外的辅助功能,比如sourceMap,生成声明文件,去除注释等,这类参数可以根据具体情况进行设置。

baseUrl

设置待编译项目根路径,一般把tsconfig放在项目根目录中,值设为./或者.即可。

outDir

编译后文件输出目录,一般设置为dist

module

设置编译后的模块化模式,一般设置为commonjs(其他可选项有UMD、AMD等),然后typescript会把importexport的语法转化为commonjs格式的代码

target

设置编译后的js代码版本,可选值包括:es6es5esnext等,如果需要考虑兼容性问题就可以设置为es5或更低的版本,如果代码是在高版本的现代浏览器或高版本的node端,就可以设置为esnext

lib

typescript在编译过程中,会有一些内建的js api(比如Math),lib就用来指明所支持的js版本所对应的内建api,可选的值包括:es6esnextdom等等,比如设置了esnext那么所有的js标准化api都会被认为是合法的内建api

sourceMap

设为true则会在编译后生成map文件,调试的时候相关工具可以根据map文件定位到原来的typescript中代码所在位置

allowJs

设为true则会允许在typescript中引入js模块文件

strict

设为true开启严格的类型检查规则,以确保程序的正确性。严格模式下的检查规则有很多条,设置了strict就是让所有的规则都开启,也可以不设置strict,单独地去设置某一条规则是否开启。为了安全性建议开启strict模式。

removeComments

编译时是否去除注释代码

declaration

是否生成d.ts类型声明文件

allowSyntheticDefaultImports

允许在加载模块时这样写:

import React from "react"

而不用再次声明一下

import * as React from "react"
noUnusedLocals和noUnusedParameters

这两项分别用来检测是否有无用变量和无用参数

experimentalDecorators

开启后允许使用实验性的装饰器语法

你可能感兴趣的:(tsconfig中常见的编译参数)