tsconfig.json常用配置,tsconfig.json最全配置
//?常用配置
{
??/*
??????tsconfig.json是ts編譯器的配置文件,ts可以根據(jù)它的信息來(lái)對(duì)待嗎進(jìn)行編譯?可以再tsconfig中寫注釋
??????include?:?用來(lái)指定哪些文件需要被編譯
??????exclude?:?用來(lái)指定哪些文件不需要被編譯?:默認(rèn)node_module
??????extends?:?用來(lái)指定繼承的配置文件
??????files???:?用來(lái)指定被編譯的文件列表,只有編譯少量文件才使用
??????compilerOptions?:?編譯器的選項(xiàng)是配置文件中非常重要也是非常復(fù)雜的配置選項(xiàng)
??*/
??"include":[
????//?**?:?任意目錄?,?*?:?任意文件
????"./src/**/*"
??],
??"exclude":?[
????"./src/hello/**/*"
??],
??//?"extends":?"./configs/base",
??"files":?[
????"1.ts",
????//?"2.ts"
??],
??"compilerOptions":?{
????//?用來(lái)指定?ES?版本?ESNext?:?最新版。?'ES3',?'ES5',?'ES6'/'ES2015',?'ES2016',?'ES2017',?'ES2018',?'ES2019',?'ES2020',?'ESNext'
????"target":?"ES2020",
????//?指定要使用模塊化的規(guī)范?:?'None',?'CommonJS',?'AMD',?'System',?'UMD',?'ES6'/'ES2015',?'ES2020'?or?'ESNext'
????"module":?"ESNext",
????//?用來(lái)指定項(xiàng)目中要使用的庫(kù)?'ES5',?'ES6',?'ES2015',?'ES7',?'ES2016',?'ES2017',?'ES2018',?'ESNext',?'DOM',?'DOM.Iterable',
????//??????????????????????????'WebWorker',?'ScriptHost',?'ES2015.Core',?'ES2015.Collection',?'ES2015.Generator',?'ES2015.Iterable',?
????//??????????????????????????'ES2015.Promise',?'ES2015.Proxy',?'ES2015.Reflect',?'ES2015.Symbol',?'ES2015.Symbol.WellKnown',?
????//??????????????????????????'ES2016.Array.Include',?'ES2017.object',?'ES2017.Intl',?'ES2017.SharedMemory',?'ES2017.String',?
????//??????????????????????????'ES2017.TypedArrays',?'ES2018.Intl',?'ES2018.Promise',?'ES2018.RegExp',?'ESNext.AsyncIterable',?
????//??????????????????????????'ESNext.Array',?'ESNext.Intl',?'ESNext.Symbol'
????//?運(yùn)行在瀏覽器中不用設(shè)置,運(yùn)行在node或其他中才需要設(shè)置
????//?"lib":[],
????//?用來(lái)指定編譯后文件的存放位置
????"outDir":"./dist",
????//?將代碼合并為一個(gè)文件,設(shè)置之后所有的全局作用域中的代碼會(huì)合并到同一個(gè)文件中?但是只能在??'amd'?and?'system'?中才能使用
????//?"outFile":?"./dist/app.js",
????//?是否對(duì)js文件進(jìn)行編譯,默認(rèn)false
????"allowJs":?false,
????//?是否檢查js代碼是否符合語(yǔ)法規(guī)范,默認(rèn)false
????"checkJs":?false,
????//?是否移除注釋,默認(rèn)false
????"removeComments":false,
????//?是否不生成編譯后文件,默認(rèn)false
????"noEmit":?false,
????//?當(dāng)有錯(cuò)誤時(shí)是否生成文件,默認(rèn)false
????"noEmitOnError":?false,
????//?是否生成sourceMap,默認(rèn)false??這個(gè)文件里保存的,是轉(zhuǎn)換后代碼的位置,和對(duì)應(yīng)的轉(zhuǎn)換前的位置。有了它,出錯(cuò)的時(shí)候,通過(guò)斷點(diǎn)工具可以直接顯示原始代碼,而不是轉(zhuǎn)換后的代碼。
????"sourceMap":false,
????//?所有的嚴(yán)格檢查的總開(kāi)關(guān),默認(rèn)false
????"strict":?false,
????//?編譯后的文件是否開(kāi)啟嚴(yán)格模式,默認(rèn)false
????"alwaysStrict":?false,
????//?不允許隱式的any,默認(rèn)false(允許)
????"noImplicitAny":?false,
????//?不允許隱式的this,默認(rèn)false(允許)
????"noImplicitThis":?false,
????//?是否嚴(yán)格的檢查空值,默認(rèn)false?檢查有可能為null的地方
????"strictNullChecks":?true,
????//?是否嚴(yán)格檢查bind、call和apply的參數(shù)列表,默認(rèn)false??檢查是否有多余參數(shù)
????"strictBindCallApply":false,
????//?是否嚴(yán)格檢查函數(shù)的類型,
????"strictFunctionTypes":false,
????//?是否嚴(yán)格檢查屬性是否初始化,默認(rèn)false
????"strictPropertyInitialization":false,
????//?是否檢查switch語(yǔ)句包含正確的break,默認(rèn)false
????"noFallthroughCasesInSwitch":false,
????//?檢查函數(shù)沒(méi)有隱式的返回值,默認(rèn)false
????"noImplicitReturns":false,
????//?是否檢查檢查未使用的局部變量,默認(rèn)false
????"noUnusedLocals":false,
????//?是否檢查未使用的參數(shù),默認(rèn)false
????"noUnusedParameters":false,
????//?是否檢查不可達(dá)代碼報(bào)錯(cuò),默認(rèn)false???true,忽略不可達(dá)代碼?false,不可達(dá)代碼將引起錯(cuò)誤
????"allowUnreachableCode":false
??}
}
//?最全配置
//?https://www.tslang.cn/docs/handbook/compiler-options.html