"compilerOptions": {
"incremental": true, // TS編譯器在第一次編譯之后會(huì)生成一個(gè)存儲(chǔ)編譯信息的文件秦驯,第二次編譯會(huì)在第一次的基礎(chǔ)上進(jìn)行增量編譯鹤盒,可以提高編譯的速度
"tsBuildInfoFile": "./buildFile", // 增量編譯文件的存儲(chǔ)位置
"diagnostics": true, // 打印診斷信息
"target": "ES5", // 目標(biāo)語言的版本
"module": "CommonJS", // 生成代碼的模板標(biāo)準(zhǔn)
"outFile": "./app.js", // 將多個(gè)相互依賴的文件生成一個(gè)文件咧叭,可以用在AMD模塊中刚操,即開啟時(shí)應(yīng)設(shè)置"module": "AMD",
"lib": ["DOM", "ES2015", "ScriptHost", "ES2019.Array"], // TS需要引用的庫唉工,即聲明文件,es5 默認(rèn)引用dom撤蚊、es5逮诲、scripthost,如需要使用es的高級(jí)版本特性,通常都需要配置吟温,如es8的數(shù)組新特性需要引入"ES2019.Array",
"allowJS": true, // 允許編譯器編譯JS序仙,JSX文件
"checkJs": true, // 允許在JS文件中報(bào)錯(cuò),通常與allowJS一起使用
"outDir": "./dist", // 指定輸出目錄
"rootDir": "./", // 指定輸出文件目錄(用于輸出)鲁豪,用于控制輸出目錄結(jié)構(gòu)
"declaration": true, // 生成聲明文件潘悼,開啟后會(huì)自動(dòng)生成聲明文件
"declarationDir": "./file", // 指定生成聲明文件存放目錄
"emitDeclarationOnly": true, // 只生成聲明文件,而不會(huì)生成js文件
"sourceMap": true, // 生成目標(biāo)文件的sourceMap文件
"inlineSourceMap": true, // 生成目標(biāo)文件的inline SourceMap呈昔,inline SourceMap會(huì)包含在生成的js文件中
"declarationMap": true, // 為聲明文件生成sourceMap
"typeRoots": [], // 聲明文件目錄挥等,默認(rèn)時(shí)node_modules/@types
"types": [], // 加載的聲明文件包
"removeComments":true, // 刪除注釋
"noEmit": true, // 不輸出文件,即編譯后不會(huì)生成任何js文件
"noEmitOnError": true, // 發(fā)送錯(cuò)誤時(shí)不輸出任何文件
"noEmitHelpers": true, // 不生成helper函數(shù),減小體積堤尾,需要額外安裝肝劲,常配合importHelpers一起使用
"importHelpers": true, // 通過tslib引入helper函數(shù),文件必須是模塊
"downlevelIteration": true, // 降級(jí)遍歷器實(shí)現(xiàn)郭宝,如果目標(biāo)源是es3/5辞槐,那么遍歷器會(huì)有降級(jí)的實(shí)現(xiàn)
"strict": true, // 開啟所有嚴(yán)格的類型檢查
"alwaysStrict": true, // 在代碼中注入'use strict'
"noImplicitAny": true, // 不允許隱式的any類型
"strictNullChecks": true, // 不允許把null、undefined賦值給其他類型的變量
"strictFunctionTypes": true, // 不允許函數(shù)參數(shù)雙向協(xié)變
"strictPropertyInitialization": true, // 類的實(shí)例屬性必須初始化
"strictBindCallApply": true, // 嚴(yán)格的bind/call/apply檢查
"noImplicitThis": true, // 不允許this有隱式的any類型
"noUnusedLocals": true, // 檢查只聲明粘室、未使用的局部變量(只提示不報(bào)錯(cuò))
"noUnusedParameters": true, // 檢查未使用的函數(shù)參數(shù)(只提示不報(bào)錯(cuò))
"noFallthroughCasesInSwitch": true, // 防止switch語句貫穿(即如果沒有break語句后面不會(huì)執(zhí)行)
"noImplicitReturns": true, //每個(gè)分支都會(huì)有返回值
"esModuleInterop": true, // 允許export=導(dǎo)出榄檬,由import from 導(dǎo)入
"allowUmdGlobalAccess": true, // 允許在模塊中全局變量的方式訪問umd模塊
"moduleResolution": "node", // 模塊解析策略,ts默認(rèn)用node的解析策略衔统,即相對的方式導(dǎo)入
"baseUrl": "./", // 解析非相對模塊的基地址鹿榜,默認(rèn)是當(dāng)前目錄
"paths": { // 路徑映射,相對于baseUrl
// 如使用jq時(shí)不想使用默認(rèn)版本锦爵,而需要手動(dòng)指定版本舱殿,可進(jìn)行如下配置
"jquery": ["node_modules/jquery/dist/jquery.min.js"]
},
"rootDirs": ["src","out"], // 將多個(gè)目錄放在一個(gè)虛擬目錄下,用于運(yùn)行時(shí)险掀,即編譯后引入文件的位置可能發(fā)生變化沪袭,這也設(shè)置可以虛擬src和out在同一個(gè)目錄下,不用再去改變路徑也不會(huì)報(bào)錯(cuò)
"listEmittedFiles": true, // 打印輸出文件
"listFiles": true// 打印編譯的文件(包括引用的聲明文件)
}
tsconfig.json 的基本配置項(xiàng)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鹃骂,“玉大人台盯,你說我怎么就攤上這事∥废撸” “怎么了静盅?”我有些...
- 文/不壞的土叔 我叫張陵,是天一觀的道長寝殴。 經(jīng)常有香客問我蒿叠,道長,這世上最難降的妖魔是什么蚣常? 我笑而不...
- 正文 為了忘掉前任市咽,我火速辦了婚禮,結(jié)果婚禮上抵蚊,老公的妹妹穿的比我還像新娘施绎。我一直安慰自己,他們只是感情好贞绳,可當(dāng)我...
- 文/花漫 我一把揭開白布谷醉。 她就那樣靜靜地躺著,像睡著了一般冈闭。 火紅的嫁衣襯著肌膚如雪俱尼。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼次屠!你這毒婦竟也來了园匹?” 一聲冷哼從身側(cè)響起雳刺,我...
- 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎裸违,沒想到半個(gè)月后掖桦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡供汛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年枪汪,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片怔昨。...
- 正文 年R本政府宣布矮烹,位于F島的核電站越庇,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏奉狈。R本人自食惡果不足惜卤唉,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望仁期。 院中可真熱鬧桑驱,春花似錦、人聲如沸蟀拷。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽问芬。三九已至悦析,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間此衅,已是汗流浹背强戴。 一陣腳步聲響...
- 正文 我出身青樓,卻偏偏與公主長得像墨微,于是被迫代替她去往敵國和親道媚。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...