利用types增強vscode中js代碼提示功能詳解
使用 types 增強vscode中javascript代碼提示功能
微軟的vscode編輯器是開發(fā)typescript項目的不二首選,其本身也是采用typescript開發(fā)的。
使用過ts的同學(xué)都知道 *.d.ts 類型聲明文件,其管理工具,從最初的 tsd,到后來的 typings,一直到現(xiàn)在的@types,類型聲明文件為ts的智能提示,類型檢查提供了有力支持。
我們也可以使用類型聲明文件,增強vscode編輯javascript時的智能提示。
關(guān)于vscode這方面更深的說明,請訪問以下鏈接:
1、https://code.visualstudio.com/docs/languages/javascript
2、https://github.com/Microsoft/TypeScript/wiki/JavaScript-Language-Service-in-Visual-Studio
3、https://code.visualstudio.com/docs/editor/intellisense
安裝 types 文件
現(xiàn)在,我們可以不依賴typings直接使用npm安裝所需要的types類型文件。
比如,我們要安裝sequelize的類型文件,可以直接使用:
npm install @types/sequelize --save-dev
安裝完成后,我們在 node_modules目錄下發(fā)現(xiàn)有一個@types目錄,該目錄里就是所安裝的所有的類型聲明文件。
如果有的第三方npm包官方未提供類型聲明文件時,可能會安裝出錯,找不到相應(yīng)的包。這時,就沒法利用其增強js代碼的提示功能。
如果你熟悉使用ts如何編寫*.d.ts文件,也可以自己寫一個。
配置 jsconfig.json 文件
對于jsconfig.json文件的詳細說明,請參照這里。
在jsconfig.json文件中添加:
"include": [
"model/**",
"service/**"
],
"typeAcquisition": {
"include": [
"sequelize"
]
}
其中typeAcquisition參數(shù)是必配的,標識啟用類型感知功能,里面的include標識對哪個包啟用。
上面的include不是必須的,只是用來標識jsconfig.json文件對哪些文件起作用。
開啟后,如圖:

我們上圖中例子提示的就是sequelize包中Model類的實例方法和屬性。
vscode對智能感知的圖標,也給了一定的匯總:

在js文件中啟用語義檢查
如果要在js中啟用類型檢查,可以在文件最上面添加 // @ts-check 注釋。
// @ts-check let easy = 'abc' easy = 123 // Error: Type '123' is not assignable to type 'string'
或者在 jsconfig.json中進行配置:
{
"compilerOptions": {
"checkJs": true
},
"exclude": [
"node_modules"
]
}
詳情請參閱文檔
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
JavaScript實現(xiàn)構(gòu)造json數(shù)組的方法分析
這篇文章主要介紹了JavaScript實現(xiàn)構(gòu)造json數(shù)組的方法,結(jié)合實例形式對比分析了javascript構(gòu)造json數(shù)組的實現(xiàn)方法及相關(guān)操作注意事項,需要的朋友可以參考下2018-08-08
jquery 實現(xiàn)輸入郵箱時自動補全下拉提示功能
大家在做Web項目,都會有注冊登錄模塊,如果是郵箱注冊,想要在輸入@后觸發(fā)下拉框顯示各個郵箱的功能。下面介紹一款jQuery實現(xiàn)輸入郵箱的時候,可自動補全郵箱地址,也可稱為是“輸入提示”的功能,比如輸入aaa時,自動變成aaa@163.com,有效提升網(wǎng)頁的人性化體驗2015-10-10
BootStrap Table 設(shè)置height表頭與內(nèi)容無法對齊的問題
這篇文章主要介紹了BootStrap Table 設(shè)置height表頭與內(nèi)容無法對齊的問題,需要的朋友可以參考下2016-12-12
支付寶小程序自定義彈窗dialog插件的實現(xiàn)代碼
支付寶小程序官方提供的alert提示框、dialog對話框、model彈窗功能比較有限,有些都不能隨意自定義修改的。這篇文章主要介紹了支付寶小程序自定義彈窗dialog插件的實現(xiàn)代碼,需要的朋友可以參考下2018-11-11
JavaScript循環(huán)_動力節(jié)點Java學(xué)院整理
這篇文章主要為大家詳細介紹了JavaScript循環(huán)的相關(guān)資料,JavaScript的兩種循環(huán)方式,一種是for循環(huán),另while一種是循環(huán)具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06

