最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

TypeScript中的安裝配置過程

 更新時間:2025年12月16日 09:46:25   作者:幾何心涼  
TypeScript是一種編譯時的靜態(tài)類型語言,通過類型檢查在編譯時發(fā)現(xiàn)錯誤,而不是運行時,安裝和運行TypeScript需要全局安裝,并使用tsc命令編譯,配置文件tsconfig.json可以自定義編譯選項,推薦使用ts-node和nodemon簡化開發(fā)流程,并在VSCode中配置TypeScript相關(guān)設(shè)置

寫在前面

重要概念: TypeScript(TS)是一種編譯時的靜態(tài)類型語言,是一種強類型語言

  • 靜態(tài)類型: 在TypeScript中,變量和函數(shù)的類型是在編寫代碼時指定的,而不是在運行時確定的。這有助于捕捉類型錯誤,并提供更好的代碼自動補全、導(dǎo)航和重構(gòu)支持。
  • 編譯時: 瀏覽器和nodejs并不能直接識別TS代碼,需要編譯成js代碼。TypeScript在編譯到JavaScript之前進行類型檢查。這意味著任何類型錯誤都會在編譯時被發(fā)現(xiàn),而不是在代碼運行時。
  • 強類型語言: 這個術(shù)語通常用來描述那些在編譯時執(zhí)行嚴格的類型檢查的語言。

安裝與運行

安裝

建議全局安裝

npm i -g typescript

安裝好之后,就可以直接使用tsc來編譯ts文件了

編譯

我們現(xiàn)在可以創(chuàng)建一個ts文件,并將他編譯成js文件,比如下面簡單的代碼

let str:string = "hello";

但是,就是這么簡單的代碼,編譯之后卻會報錯。

不用擔(dān)心,這個錯誤,并不是我們的錯誤,原因是默認情況下,TS會做出下面的幾種假設(shè):

1、假設(shè)當(dāng)前環(huán)境在DOM環(huán)境中

2、如果代碼中沒有模塊化語句,默認代碼是全局執(zhí)行的,所以變量就是全局變量

要最簡單的解決,就是用模塊化

可以加上TS的配置文件,或者tsc命令行的選項參數(shù)

tsconfig.json配置文件

官方配置文件說明地址:tsconfig.json

如果項目中指定了tsconfig.json文件,運行tsc不需要再指定文件路徑地址

{
  "compilerOptions": {
    "target": "ES2017", // 編譯目標版本
    "lib":["ES2017","DOM","DOM.Iterable"], // 需要引用的庫
    "outDir": "./dist" // 指定輸出目錄,如果未指定和對應(yīng)的.ts文件同目錄
  },
  "include": ["src/**/*.ts"] // 指定需要編譯的文件或目錄
}

使用第三庫簡化流程

ts-node: 將ts代碼在內(nèi)存中完成編譯,同時完成運行

安裝:

npm i -g ts-node

運行:

ts-node src/index.ts

nodemon: 檢測文件變化

安裝:

npm i -g nodemon

運行:

nodemon --exec ts-node src/index.ts

當(dāng)然,我們可以像之前一樣,將這個代碼放入到package.json的 scripts 屬性中

"scripts": {
    "start": "nodemon --exec ts-node src/index.ts"
},

開發(fā)相關(guān)配置

tsconfig初始化

tsc --init

工程切換Typescript

如果本地工程中也安裝了typescript,并且希望相關(guān)類型引用指向本地typescript,而不是vscode內(nèi)置的typescript,可以自行進行切換

Ctrl (Command 在 macOS) + Shift + P 打開命令面板,輸入Select Typescript Version,選擇切換即可

開發(fā)相關(guān)設(shè)置

在**「設(shè)置」中,「打開工作區(qū)設(shè)置」**,由于內(nèi)容較多,可以使用搜索詞:typescript inlay hints

對于新手,推薦開啟的配置項主要是這幾個:

  • Function Like Return Types,顯示推導(dǎo)得到的函數(shù)返回值類型;
  • Parameter Names,顯示函數(shù)入?yún)⒌拿Q;
  • Parameter Types,顯示函數(shù)入?yún)⒌念愋停?/li>
  • Variable Types,顯示變量的類型。

{
  "typescript.inlayHints.functionLikeReturnTypes.enabled": true,
  "typescript.inlayHints.parameterNames.enabled": "all",
  "typescript.inlayHints.parameterTypes.enabled": true,
  "typescript.inlayHints.variableTypes.enabled": true
}

當(dāng)然,并不是所有人都習(xí)慣這樣的顯示方式,你可以根據(jù)自己的需要進行調(diào)整。

VS Code插件

Error Lens:這個插件能夠把錯誤直接顯示到代碼文件中的對應(yīng)位置:

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • JS數(shù)組reduce你不得不知道的25個高級用法

    JS數(shù)組reduce你不得不知道的25個高級用法

    reduce作為ES5新增的常規(guī)數(shù)組方法之一,對比forEach 、filter和map,在實際使用上好像有些被忽略,下面這篇文章主要給大家介紹了關(guān)于JS數(shù)組reduce你不得不知道的25個高級用法,需要的朋友可以參考下
    2021-06-06
  • JS實現(xiàn)鼠標移動拖尾

    JS實現(xiàn)鼠標移動拖尾

    這篇文章主要為大家詳細介紹了JS實現(xiàn)鼠標移動拖尾效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12
  • 深入剖析JavaScript instanceof 運算符

    深入剖析JavaScript instanceof 運算符

    這篇文章主要介紹了深入剖析JavaScript instanceof 運算符,ECMAScript 引入了另一個 Java 運算符 instanceof 來解決這個問題。instanceof 運算符與 typeof 運算符相似,用于識別正在處理的對象的類型。,需要的朋友可以參考下
    2019-06-06
  • ionic2 tabs使用 Modal底部tab彈出框

    ionic2 tabs使用 Modal底部tab彈出框

    最近做了一個項目,其中要實現(xiàn)這樣的功能,在首頁底部中間的tab彈出一個頁面,而且是沒有底部欄的,而不是像平?;瑒拥囊粋€子頁面。其實實現(xiàn)方法很簡單,下面通過本文給大家介紹下
    2016-12-12
  • JS實現(xiàn)向iframe中表單傳值的方法

    JS實現(xiàn)向iframe中表單傳值的方法

    這篇文章主要介紹了JS實現(xiàn)向iframe中表單傳值的方法,涉及js針對頁面元素及表單屬性操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2017-03-03
  • 微信小程序使用webview頁面轉(zhuǎn)pdf文件代碼示例

    微信小程序使用webview頁面轉(zhuǎn)pdf文件代碼示例

    工作需求,將webview的內(nèi)容導(dǎo)出到pdf輸出,下面這篇文章主要給大家介紹了關(guān)于微信小程序使用webview頁面轉(zhuǎn)pdf文件的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-09-09
  • 利用JS來控制鍵盤的上下左右鍵(示例代碼)

    利用JS來控制鍵盤的上下左右鍵(示例代碼)

    這篇文章主要介紹了利用JS來控制鍵盤的上下左右鍵示例代碼。需要的朋友可以過來參考下,希望對大家有所幫助
    2013-12-12
  • 微信JSSDK上傳圖片

    微信JSSDK上傳圖片

    做過微信開發(fā)的都知道,在部分android機型里微信不支持網(wǎng)頁上傳圖片的,這是由于這些機型的文件上傳存在內(nèi)存泄漏,會導(dǎo)致微信閃退,所以微信內(nèi)置瀏覽器將文件上傳屏蔽,本篇文章給大家介紹使用微信jssdk如何上傳圖片,需要的朋友可以關(guān)注下
    2015-08-08
  • js實現(xiàn)純前端壓縮圖片

    js實現(xiàn)純前端壓縮圖片

    這篇文章主要為大家詳細介紹了js實現(xiàn)純前端壓縮圖片,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • Javascript 命名空間模式

    Javascript 命名空間模式

    命名空間是通過為項目或庫創(chuàng)建一個全局對象,然后將所有功能添加到該全局變量中。通過減少程序中全局變量的數(shù)量,實現(xiàn)單全局變量,從而在具有大量函數(shù)、對象和其他變量的情況下不會造成全局污染,同時也避免了命名沖突等問題
    2013-11-11

最新評論

高邮市| 河津市| 筠连县| 永仁县| 牡丹江市| 荥经县| 富锦市| 宁都县| 大安市| 东海县| 湄潭县| 兴宁市| 凤凰县| 万安县| 兰州市| 无为县| 龙泉市| 涡阳县| 邛崃市| 凤城市| 英德市| 札达县| 台中市| 泰安市| 瑞金市| 辽宁省| 芜湖市| 武安市| 同江市| 盐津县| 冷水江市| 五莲县| 英吉沙县| 宾阳县| 泗水县| 台东县| 大渡口区| 汉沽区| 长乐市| 丰原市| 托克托县|