在?React 項(xiàng)目中引入 TSLint 做代碼規(guī)范?這篇文章中,介紹了如何在?Create React App?項(xiàng)目中引入?TSLint?佃声,但在?Create React App?項(xiàng)目根目錄中還存在一個(gè)與 tslint.json 文件很相似的 tsconfig.json 的配置文件艺智,那么本篇文章主要介紹這個(gè)?tsconfig.json 的配置文件是?如何產(chǎn)生倘要、有什么作用?以及?如何配置?各個(gè)配置項(xiàng)的問題圾亏。
tsconfig.json 的配置文件是如何產(chǎn)生的:
在?React 項(xiàng)目中引入 TSLint 做代碼規(guī)范?這篇文章中的 步驟2 中執(zhí)行?npm install tslint typescript? --save-dev?命令后安裝了 typescript?后自動(dòng)創(chuàng)建 tsconfig.json 配置文件十拣,即 tsconfig.json 文件是使用?typescript?的一個(gè)必須文件,在自動(dòng)創(chuàng)建 tsconfig.json 文件后志鹃,該文件中已有默認(rèn)配置夭问。
tsconfig.json 的配置文件有什么作用
tsconfig.json 文件中指定了用來編譯這個(gè)項(xiàng)目的根文件和編譯選項(xiàng)。?一個(gè)項(xiàng)目可以通過以下方式之一來編譯:
a曹铃、創(chuàng)建一個(gè)?greeter.ts 文件缰趋,并寫入以下代碼(如果想拷貝以下代碼請?jiān)?Typescript 中拷貝):
b、打開命令行工具運(yùn)行?tsc greeter.ts?輸出結(jié)果為一個(gè) greeter.js 文件陕见,它包含了和輸入文件中相同的JavsScript代碼(greeter.ts 又叫輸入文件秘血,?greeter.js 又叫輸出文件)。
編譯方式1:不帶任何輸入文件的情況下調(diào)用 tsc评甜,編譯器會從當(dāng)前目錄開始去查找 tsconfig.json 文件灰粮,逐級向上搜索父目錄。
編譯方式2:不帶任何輸入文件的情況下調(diào)用 tsc忍坷,且使用命令行參數(shù) --project(或-p)指定一個(gè)包含 tsconfig.json 文件的目錄粘舟。
注意:?當(dāng)命令行上指定了輸入文件時(shí),tsconfig.json文件會被忽略佩研。
tsconfig.json 如何配置各個(gè)配置項(xiàng)
tsconfig.json 文件的各個(gè)配置項(xiàng)柑肴,以及各個(gè)配置項(xiàng)的作用請參考?tsconfig.json,我的項(xiàng)目中 tsconfig.json 文件中的配置項(xiàng)如下(沒有使用截圖旬薯,方便拷貝):
{
??"compileOnSave":?false,
??"compilerOptions":?{
????"noImplicitReturns":?true,
????"sourceMap":?true,
????"declaration":?false,
????"target":?"es5",
????"typeRoots":?[
??????"types",
??????"node_modules/@types"
????],
????"lib":?[
??????"dom",
??????"dom.iterable",
??????"esnext"
????],
????"skipLibCheck":?true,
????"esModuleInterop":?true,
????"allowSyntheticDefaultImports":?true,
????"strict":?true,
????"forceConsistentCasingInFileNames":?true,
????"module":?"esnext",
????"moduleResolution":?"node",
????"resolveJsonModule":?true,
????"isolatedModules":?true,
????"noEmit":?true,
????"jsx":?"preserve",
????"allowJs":?true
??},
??"include":?[
????"src"
??]
}
參考網(wǎng)址:
https://www.tslang.cn/docs/handbook/typescript-in-5-minutes.html
https://www.tslang.cn/docs/handbook/tsconfig-json.html