国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

tsconfig.json參數(shù)詳解

這篇具有很好參考價值的文章主要介紹了tsconfig.json參數(shù)詳解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

tsconfig.json是ts編譯器的配置文件,ts編譯器可以根據(jù)他的信息來對代碼進行編譯。?

想要學(xué)習(xí)這篇文章小伙伴,可以先去看看下面文章,可以明白tsconfig.json的由來以及如何編譯:

在vscode中使用Typescript并運行_typescript vscode插件_suoh's Blog的博客-CSDN博客

下面開始講解常用的配置項:?

include 和 exclude

?先學(xué)兩個比較實用的兩個配置項,最常用的還是include

{
  /**
    "include" 用來指定哪些ts文件需要被編譯
      路徑:**表示任意目錄
            * 表示任意文件
  */
  "include": [
    "./src/**/*" //代表編譯包含src目錄下的任意目錄的任意文件,其余的不編譯
  ],
  /**
    "exclude" 用來排除哪些ts文件需要被編譯
      默認(rèn)值:[“node modues”、“bower_components”和Sspm_packages”]
  */
  // exclude該選項一般不設(shè)置,用不到
  "exclude": [
    "./test/**/*" //不編譯test下的所有文件
  ]
}

?compilerOptions

compilerOptions是編譯器的選項,比較復(fù)雜的配置選項,里面包含若干個子項,下面依次講解各個子項的作用。

target

  • target 用來指定ts被編譯為ES的版本,默認(rèn)是ES3
  • 可以是 'es3', 'es5', 'es6', 'es2015', 'es2016', 'es2017','es2018','es2019','es2020','esnext'.

module

  • 指定要使用的模塊化的規(guī)范 例如 "module": "es2015",或者 "module": "CommonJS",
  • 可以是 "none', 'commonjs',?'amd', 'system', 'uma, 'es6', 'es2015', 'es2020', 'esnext'.

當(dāng)定義"module": "es2015" 時(推薦):?

來演示一下module的作用,我們先定義一個test.ts文件,

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

然后再indes.ts中引入這個模塊,可以看到編譯為js的時候是es6的模塊化標(biāo)準(zhǔn)方法?

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?那么module也可以采用commonjs,那么編譯過來的語法就是commonjs的語法了

當(dāng)定義"module": "commonjs" 時:

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

lib

  • ? ?用來指定項目中要使用的庫,例如document上的方法就屬于一個dom庫,一般不定義該屬性,默認(rèn)即可

outDir

  • 用來指定編譯后的文件所在的目錄

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?此時就可以看到,我們編譯之后的文件都會存在在js目錄下

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

outFile?

  • 將代碼合并為一個文件
  • 設(shè)置outFile后,所有的全局作用域中的代碼會合并到同一個文件中
  • "outFile": "./js/index.js",就代表將所有的js目錄下的js文件都合并到index.js里面tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

  • 用的比較少,了解即可

可以看到確實是合并了?

?tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?allowJs

  • 是否對js文件進行編譯,默認(rèn)是false

比如我們目錄下有個test.js此時設(shè)置allowJs為false的時候,它是不會被編譯的

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?checkJs

  • 是否檢查js代碼是否符合語法規(guī)范,默認(rèn)是false

removeComments

  • 是否移除注釋,默認(rèn)false

設(shè)置為false的時候,注釋是同樣編譯過來的?

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?當(dāng)設(shè)置為true,編譯后就不會有注釋,可以看到注釋就消失了

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?noEmit

  • 不生成編譯后的js文件,默認(rèn)就是false

noEmitOnError

  • 當(dāng)有錯誤時不生成編譯文件?

下面是關(guān)于代碼類型檢查的相關(guān)屬性設(shè)置,首先我們應(yīng)該都知道在嚴(yán)格模式下進行代碼開發(fā)要比普通模式性能要好,那在js文件中開啟嚴(yán)格模式只需要在開頭添加 ‘use strict’ 即可

?tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

那么ts中如何開啟呢?

alwaysStrict?

  • 用來設(shè)置編譯后的文件是否使用嚴(yán)格模式,默認(rèn)false

noImplicitAny

  • 不允許隱式的any類型,默認(rèn)false

我們定義一個函數(shù)設(shè)置兩個隱式類型參數(shù),此時也不會報錯

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?當(dāng)設(shè)置為true的時候就會報錯了。

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?加上類型就好了:

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?noImplicitThis

  • 不允許不明確類型的this,默認(rèn)為false

當(dāng)設(shè)置為true時就會報錯

tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

此時就需要我們手動去設(shè)置this的指向?

?tsconfig.json配置詳解,????--TypeScript,vscode,前端,typescript

?strictNullChecks

  • 嚴(yán)格的檢查空值,可以提示一些不確定是否是空值的邏輯,方便我們對空值做判斷

strict

  • 所有嚴(yán)格檢查的總開關(guān),為true時相當(dāng)于開啟了所有嚴(yán)格檢查,false則關(guān)閉所有

今天講解的常用的tsconfig.json設(shè)置全代碼如下:文章來源地址http://www.zghlxwxcb.cn/news/detail-833047.html

{
	// compilerOptions編譯器的選項
	"compilerOptions": {
		// target 用來指定ts被編譯為ES的版本,默認(rèn)是ES3 
		// 可以是 'es3', 'es5', 'es6', 'es2015', 'es2016', 'es2017','es2018','es2019','es2020','esnext'.
		"target": "ES6",
		// module 指定要使用的模塊化的規(guī)范
		"module": "CommonJS",
		// outDir 用來指定編譯后文件所在的目錄
		"outDir": "./js",
		// 將代碼合并為一個文件
		// "outFile": "./js/index.js",
		// 是否對js文件進行編譯,默認(rèn)是false
		"allowJs": false,
		// 是否檢查js代碼是否符合語法規(guī)范,默認(rèn)是false
		"checkJs": false,
		// 是否移除注釋
		"removeComments": true,
		// 不生成編譯后的文件
		"noEmit": false,
		// 當(dāng)有錯誤時不生成編譯文件
		"noEmitOnError": false,
		// 所有嚴(yán)格檢查的總開關(guān)
		"strict": false,
		// 用來設(shè)置編譯后的文件是否使用嚴(yán)格模式,默認(rèn)false
		"alwaysStrict": false,
		// 不允許隱式的any類型
		"noImplicitAny": true,
		// 不允許不明確類型的this
		"noImplicitThis": false,
		// 嚴(yán)格的檢查空值
		"strictNullChecks": false,

	},
	/**
	  "include" 用來指定哪些ts文件需要被編譯
	    路徑:**表示任意目錄
	          * 表示任意文件
	*/
	"include": [
		"./**/*" //代表編譯包含src目錄下的任意目錄的任意文件,其余的不編譯
	],
	/**
	  "exclude" 用來排除哪些ts文件需要被編譯
	    默認(rèn)值:[“node modues”、“bower_components”和Sspm_packages”]
	*/
	// exclude該選項一般不設(shè)置,用不到
	"exclude": [
		"./test/**/*" //不編譯test下的所有文件
	]
}

到了這里,關(guān)于tsconfig.json參數(shù)詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • vue3+vite項目中tsconfig.json / tsconfig.node.json 配置

    tsconfig.node.json tsconfig.json

    2024年02月13日
    瀏覽(41)
  • 解決vscode中導(dǎo)入的vue項目tsconfig.json文件首行標(biāo)紅問題

    解決vscode中導(dǎo)入的vue項目tsconfig.json文件首行標(biāo)紅問題

    vscode中導(dǎo)入的vue項目 tsconfig.json文件標(biāo)紅,文件中第一行 { 處標(biāo)紅 項目中自定義的tsconfig.json文件與vscode本身會自動進行 JavaScript 的語義檢查發(fā)生沖突,而tsconfig.json文件無法覆蓋vscode本身的javascript檢查,故標(biāo)紅 讓項目自定義的tsconfig.json文件覆蓋vscode自帶的javascript語義檢查

    2024年01月19日
    瀏覽(20)
  • 【制作npm包3】了解 tsconfig.json 相關(guān)配置

    本文是系列文章, 作者一個橙子pro,本系列文章大綱如下。轉(zhuǎn)載或者商業(yè)修改必須注明文章出處 一、申請npm賬號、個人包和組織包區(qū)別 二、了解 package.json 相關(guān)配置 三、 了解 tsconfig.json 相關(guān)配置 四、 api-extractor 學(xué)習(xí) 五、 npm 包制作完整教程,我的第一個npm包 在最早的 ty

    2024年02月12日
    瀏覽(34)
  • vscode中vue3+ts報類型“{ }“上不存在屬性“ “,以及ts.config.app.json和tsconfig.node.json中報錯(徹底解決)

    vscode中vue3+ts報類型“{ }“上不存在屬性“ “,以及ts.config.app.json和tsconfig.node.json中報錯(徹底解決)

    親愛的小伙伴們,你們是否遇到過使用vscode打開vue3+ts項目時一片爆紅,一直提示類型\\\"{}\\\"上不存在屬性 \\\"\\\",以及ts.config.app.json和tsconfig.node.json中報“在沒有\(zhòng)\\"node\\\"模塊解析策略的情況下,無法指定選項\\\"-resolveJsonModule”的問題,不要擔(dān)心,不要著急,看了很多篇的博客,我終于是

    2024年02月13日
    瀏覽(26)
  • vue項目的Husky、env、editorconfig、eslintrc、tsconfig.json配置文件小聊

    1、 Husky Husky 是一款管理 git hooks 的工具,可以幫助我們觸發(fā) git 提交的各個階段: pre-commit、commit-msg、pre-push , 有助于我們在項目開發(fā)中的git規(guī)范和團隊協(xié)作。 .husky 文件通常包含以下內(nèi)容: pre-commit :在提交代碼前運行的腳本,可以用于代碼格式化、代碼檢查等操作; pr

    2024年04月28日
    瀏覽(25)
  • vscode中setting.json配置詳解

    vscode中的setting.json配置文件配置詳解 話不多說上配置文件 大家按需復(fù)制到自己的setting.json配置文件中即可

    2024年02月16日
    瀏覽(14)
  • Cannot find base config file @vue/tsconfig/tsconfig.web.json

    vue升級到最新版本,node18 會出現(xiàn)warning 參考issues Cannot find base config file @vue/tsconfig/tsconfig.web.json

    2024年02月12日
    瀏覽(22)
  • TypeScript教程(一)在vscode中的配置TypeScript環(huán)境

    TypeScript教程(一)在vscode中的配置TypeScript環(huán)境

    未來的開發(fā)者們請上座,隨著時代的發(fā)展web網(wǎng)頁的發(fā)展越來越豐富,掌握TypeScript顯得更加有必要。 安裝Node.js:首先,確保您已經(jīng)安裝了Node.js。您可以從Node.js官方網(wǎng)站(https://nodejs.org)下載并安裝適合您操作系統(tǒng)的版本。 npm 切換淘寶鏡像源 查詢鏡像使用狀態(tài) npm 安裝TypeS

    2024年01月24日
    瀏覽(17)
  • 詳解如何使用VSCode搭建TypeScript環(huán)境(適合小白)

    詳解如何使用VSCode搭建TypeScript環(huán)境(適合小白)

    因為TypeScript不能直接在瀏覽器上運行。它需要編譯器來編譯并生成JavaScript文件。所以需要首先安裝好javascript環(huán)境,可以參考文章: 詳解如何使用VS code搭建JavaScript環(huán)境(適合小白)_vscode配置javascript環(huán)境-CSDN博客 執(zhí)行下面命令進行安裝 npm install -g typescript 安裝完成后我們就

    2024年02月04日
    瀏覽(21)
  • 新增:前端提示“請求JSON參數(shù)格式不正確,請檢查參數(shù)格式

    新增:前端提示“請求JSON參數(shù)格式不正確,請檢查參數(shù)格式

    解決方法: 1.檢查后端控制臺報錯: 參數(shù)格式傳遞異常,請求號為:3b44424d-73bd-4db7-970b-38638451c439,具體信息為:JSON parse error: Cannot deserialize value of type ` java.lang.Long` from String \\\" 新增的字段 \\\": not a valid Long value; nested exception is com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot

    2024年02月17日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包