TypeScript 編譯選項

2022-05-31 14:54 更新
選項 類型 默認值 描述
--allowJs boolean true 允許編譯javascript文件。
--allowSyntheticDefaultImports boolean module === "system" 允許從沒有設置默認導出的模塊中默認導入。這并不影響代碼的顯示,僅為了類型檢查。
--allowUnreachableCode boolean false 不報告執(zhí)行不到的代碼錯誤。
--allowUnusedLabels boolean false 不報告未使用的標簽錯誤。
--baseUrl string   解析非相對模塊名的基準目錄。查看模塊解析文檔了解詳情。
--charset string "utf8" 輸入文件的字符集。
--declaration
-d
boolean false 生成相應的'.d.ts'文件。
--declarationDir string   生成聲明文件的輸出路徑。
--diagnostics boolean false 顯示診斷信息。
--disableSizeLimit boolean false 禁用JavaScript工程體積大小的限制
--emitBOM boolean false 在輸出文件的開頭加入BOM頭(UTF-8 Byte Order Mark)。
--emitDecoratorMetadata[1] boolean false 給源碼里的裝飾器聲明加上設計類型元數據。查看issue #2577了解更多信息。
--experimentalDecorators[1] boolean false 實驗性啟用ES7裝飾器支持。
--forceConsistentCasingInFileNames boolean false 不允許不一致包裝引用相同的文件。
--help
-h
    打印幫助信息。
--inlineSourceMap boolean false 生成單個sourcemaps文件,而不是將每sourcemaps生成不同的文件。
--inlineSources boolean false 將代碼與sourcemaps生成到一個文件中,要求同時設置了--inlineSourceMap--sourceMap屬性。
--init     初始化TypeScript項目并創(chuàng)建一個tsconfig.json文件。
--isolatedModules boolean false 無條件地給沒有解析的文件生成imports。
--jsx string "Preserve" 在'.tsx'文件里支持JSX:'React' 或 'Preserve'。查看JSX。
--lib string[]   編譯過程中需要引入的庫文件的列表。
可能的值為: 
es5 
es6 
es2015 
es7 
es2016 
es2017 dom 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.sharedmemory 
注意:如果--lib沒有指定默認庫。默認庫是
? For --target ES5: dom,es5,scripthost
? For --target ES6: dom,es6,dom.iterable,scripthost
--listEmittedFiles boolean false 打印出編譯后生成文件的名字。
--listFiles boolean false 編譯過程中打印文件名。
--locale string (platform specific) 顯示錯誤信息時使用的語言,比如:en-us。
--mapRoot string   為調試器指定指定sourcemap文件的路徑,而不是使用生成時的路徑。當.map文件是在運行時指定的,并不同于js文件的地址時使用這個標記。指定的路徑會嵌入到sourceMap里告訴調試器到哪里去找它們。
--maxNodeModuleJsDepth number 0 node_modules下的最大依賴深度搜索并加載JavaScript文件。僅適用于使用--allowJs。
--module
-m
string target === 'ES6' ? 'ES6' : 'commonjs' 指定生成哪個模塊系統(tǒng)代碼:'commonjs','amd','system',或 'umd'或'es2015'。只有'amd'和'system'能和--outFile一起使用。當目標是ES5或以下的時候不能使用'es2015'。
--moduleResolution string module === 'amd' | 'system' | 'ES6' ? 'classic' : 'node' 決定如何處理模塊?;蛘呤?node'對于Node.js/io.js,或者是'classic'(默認)。查看模塊解析文檔了解詳情。
--newLine string (platform specific) 當生成文件時指定行結束符:'CRLF'(dos)或 'LF' (unix)。
--noEmit boolean false 不生成輸出文件。
--noEmitHelpers boolean false 不在輸出文件中生成用戶自定義的幫助函數代碼,如__extends
--noEmitOnError boolean false 報錯時不生成輸出文件。
--noFallthroughCasesInSwitch boolean false 報告switch語句的fallthrough錯誤。(即,不允許switch的case語句貫穿)
--noImplicitAny boolean false 在表達式和聲明上有隱含的'any'類型時報錯。
--noImplicitReturns boolean false 不是函數的所有返回路徑都有返回值時報錯。
--noImplicitThis boolean false this表達式的值為any類型的時候,生成一個錯誤。
--noImplicitUseStrict boolean false 模塊輸出中不包含'use strict'指令。
--noLib boolean false 不包含默認的庫文件(lib.d.ts)。
--noResolve boolean false 不把/// <reference``>或模塊導入的文件加到編譯文件列表。
--noUnusedLocals boolean false 若有未使用的局部變量則拋錯。
--noUnusedParameters boolean false 若有未使用的參數則拋錯。
--out string   棄用。使用 --outFile 代替。
--outDir string   重定向輸出目錄。
--outFile string   將輸出文件合并為一個文件。合并的順序是根據傳入編譯器的文件順序和///<reference``>import的文件順序決定的。查看輸出文件順序文件了解詳情。
paths[2] Object   模塊名到基于baseUrl的路徑映射的列表。查看模塊解析文檔了解詳情。
--preserveConstEnums boolean false 保留constenum聲明。查看const enums documentation了解詳情。
--pretty[1] boolean false 給錯誤和消息設置樣式,使用顏色和上下文。
--project
-p
string   編譯指定目錄下的項目。這個目錄應該包含一個tsconfig.json文件來管理編譯。查看tsconfig.json文檔了解更多信息。
--reactNamespace string "React" 當目標為生成'react' JSX時,指定createElement__spread的調用對象
--removeComments boolean false 刪除所有注釋,除了以/!*開頭的版權信息。
--rootDir string (common root directory is computed from the list of input files) 僅用來控制輸出的目錄結構--outDir
rootDirs[2] string[]   根(root)文件夾列表,聯給了代表運行時表示工程結構的內容。查看模塊解析文檔了解詳情。
--skipLibCheck boolean false 不檢查默認庫文件(lib.d.ts)的正確性。
--skipDefaultLibCheck boolean false 不檢查用戶定義的庫文件(*.d.ts)的正確性。
--sourceMap boolean false 生成相應的'.map'文件。
--sourceRoot string   指定TypeScript源文件的路徑,以便調試器定位。當TypeScript文件的位置是在運行時指定時使用此標記。路徑信息會被加到sourceMap里。
--strictNullChecks boolean false 在嚴格的null檢查模式下,nullundefined值不包含在任何類型里,只允許用它們自己和any來賦值(有個例外,undefined可以賦值到void)。
--stripInternal[1] boolean false 不對具有/** @internal */ JSDoc注解的代碼生成代碼。
--suppressExcessPropertyErrors[1] boolean false 阻止對對象字面量的額外屬性檢查。
--suppressImplicitAnyIndexErrors boolean false 阻止--noImplicitAny對缺少索引簽名的索引對象報錯。查看issue #1232了解詳情。
--target
-t
string "ES5" 指定ECMAScript目標版本'ES3' (默認),'ES5',或'ES6'[1]
--traceResolution boolean false 生成模塊解析日志信息
--types string[]   要包含的類型聲明文件名列表。
--typeRoots string[]   要包含的類型聲明文件路徑列表。
--version
-v
    打印編譯器版本號。
--watch
-w
    在監(jiān)視模式下運行編譯器。會監(jiān)視輸出文件,在它們改變時重新編譯。
  • [1] 這些選項是試驗性的。
  • [2] 這些選項只能在tsconfig.json里使用,不能在命令行使用。

相關信息

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號