這些必備的 VS Code 插件你都用過嗎汪拥?

本文翻譯自:https://www.sitepoint.com/vs-code-extensions-javascript-developers/

由葡萄城團隊發(fā)布在開源中國社區(qū)积瞒。轉(zhuǎn)載請注明出處:葡萄城官網(wǎng)

更多精彩內(nèi)容歡迎 Wechat:oschina2013

如今忙厌,Visual Studio Code無疑是最流行的輕量級代碼編輯器铃岔。它確實從其他代碼編輯器那借鑒了很多涉馁,最主要是從Sublime和Atom那里门岔。然而它的成功關(guān)鍵是源于能提供更好的性能和穩(wěn)定的表現(xiàn)。另外谨胞,它還提供了如代碼智能提示等開發(fā)者非常需要的功能固歪。而這些功能,曾經(jīng)只在像Eclipse或者Visual Studio 2017這樣的完整集成開發(fā)環(huán)境(IDEs)中才有胯努。

VS Code的強大無疑來自于它的插件市場牢裳。多虧了開源社區(qū),VS Code現(xiàn)在幾乎對所有的編程語言叶沛、框架和開發(fā)技術(shù)都有支持蒲讯。提供這種支持的方式是多樣的,主要包括了為特定技術(shù)提供代碼片段灰署、語法高亮判帮、Emmet以及智能提示功能局嘁。

VS Code插件的種類

在本文,我主要介紹專門針對JavaScript開發(fā)者的VS Code插件晦墙。有很多滿足此條件的VS Code插件悦昵,當然我不會都作介紹。相反晌畅,我會著重介紹那些已經(jīng)相當流行而且對JavaScript開發(fā)者來說必不可少的VS Code插件但指。為簡單起見,我把它們分為10類抗楔。

在這之中可能有你已經(jīng)知道并且正在使用的插件棋凳,但也很有可能有一些是你聽說過但未曾使用過的,我也希望通過本文能為你簡要的介紹一下這些插件连躏。

1. 代碼片段插件

當你第一次安裝VS Code時剩岳,它會附帶一些JavaScript和TypeScript的代碼片段。在你開始上手現(xiàn)代JavaScript之前入热,你將需要一些額外的代碼片段來幫助你快速地編寫ES6/ES7代碼:

VS Code JavaScript(ES6) snippets:當前最流行的拍棕,已有超過120萬的下載量。這個插件為JavaScript才顿、TypeScript莫湘、HTML、React和Vue提供了ES6的語法支持郑气。

JavaScript Snippet Pack:提供了有用的JavaScript代碼片段集合幅垮。(這個鏈接打不開了)

Atom JavaScript Snippet:移植自Atom的JavaScript插件。

JavaScript Snippets:提供了ES6代碼片段的集合尾组。它包含對Mocha忙芒、Jasmine等其他BBD(Behavior-Driven Development)測試框架的支持。

2. 語法高亮插件

VS Code自帶很好的JavaScript代碼語法高亮讳侨。你可以通過安裝主題改變這些顏色呵萨。然而,如果你想要更高水平的可讀性跨跨,就得安裝語法高亮的插件了潮峦。這里有一些:

JavaScript Atom Grammar:它用Atom編輯器里的JavaScript語法高亮替換VS Code原來的。

Babel JavaScript:支持ES201X勇婴、React忱嘹、FlowType以及GraphQL的語法高亮。

DotENV:支持.env文件語法高亮耕渴,在你使用Node時會非常有用拘悦。

3. 代碼檢測插件

以最小的煩惱高效編寫JavaScript代碼,需要一個代碼檢測(linter)工具橱脸。它強制團隊所有成員遵循特定的代碼規(guī)范础米。ESLint是最受歡迎的分苇,它支持許多代碼風格,包括Standard屁桑、Google和Airbnb的JavaScript代碼規(guī)范医寿。這里是最流行的VS Code代碼檢查插件:

ESLint:這個插件把ESLint集成到VS Code中。它是最流行的代碼檢測插件蘑斧,已有超過670萬下載量糟红。它的規(guī)則在.eslintrc.json里配置。

JSHint:基于JSHint的代碼檢測插件乌叶。在項目跟目錄下使用.jshintrc文件作為其配置。

JavaScript Standard Style:零配置和嚴格規(guī)則的代碼檢測柒爸,強制使用StandardJS規(guī)則准浴。

如果你想查看對各種代碼檢測優(yōu)缺點的綜述,可以來看看我們對代碼檢測工具的比較捎稚。

4. Node插件

每一個JavaScript項目都需要至少一個Node package乐横,除非你是那種喜歡以艱難的方式做事的人。這里有一些VS Code插件今野,能幫你更容易的處理Node模塊葡公。

npm:用package.json來校驗安裝的npm包,確保安裝包的版本正確条霜,對缺少package.json文件的包或者未安裝的包給出高亮提示催什。

Node.js Modules IntelliSense:提供JavaScript和TypeScript導入聲明時的自動補全。源碼:vscode-node-module-intellisense宰睡。?

Path IntelliSense:它其實與Node沒有關(guān)系蒲凶,但是你肯定需要對本地文件的智能提示,這個插件會自動補全文件名拆内。

Node exec:允許你用Node執(zhí)行當前文件或者選中的代碼旋圆。

View Node Package:利用此插件可快速查看Node包源碼,讓你直接在VS Code中打開Node包的代碼庫或文檔麸恍。

Search node_modules:通常node_modules文件夾不在默認的搜索范圍內(nèi)灵巧,這個插件允許你搜索它。源碼:vscode-search-node-modules抹沪。

Import Cost:顯示導入的包的大小刻肄。源碼:import-cost。?

5. 代碼格式化插件

有時采够,你發(fā)現(xiàn)自己會對以前寫過的風格不太理想的代碼做格式整理肄方。為了節(jié)約時間,你可以安裝以下任何的VS Code插件蹬癌,來快速地格式化和重構(gòu)現(xiàn)有代碼:

Beatufy:一個jsBeautifier的插件权她,支持JavaScript虹茶、JSON、CSS和HTML隅要『铮可通過.jsbeautifyrc文件自定義。它是最流行的格式化工具步清,目前有230萬的下載量要门。

Prettier Code Formatter:利用Prettier的支持JavaScript、TypeScript和CSS的插件廓啊,目前有超過150萬的下載量欢搜。

JS Refactor:提供許多重構(gòu)JavaScript代碼的實用方法和操作,例如抽取變量和方法谴轮,把現(xiàn)有代碼轉(zhuǎn)為使用箭頭函數(shù)和模板字符串的等價形式炒瘟,導出函數(shù)等。

JavaScript Booster:一款了不起的代碼重構(gòu)工具第步。擁有需要代碼操作疮装,比如把var轉(zhuǎn)為const或者let,去除多余的else語句粘都,合并聲明和初始化廓推。其靈感大量源于WebStorm的啟發(fā)。源碼:vscode-javascript-booster翩隧。

6. 瀏覽器插件

除非你是在用JavaScript寫控制臺程序樊展,否則你多半會在瀏覽器中執(zhí)行你的JavaScript代碼。這意味著堆生,你會頻繁地刷新瀏覽器以觀察每次你更新代碼的效果滚局。這里有一些工具,能極大地減少你開發(fā)時的這種重復(fù)流程顽频,而不是每次都手動刷新瀏覽器:

Debugger for Chrome:在編輯器中打斷點藤肢,讓你輕松地在Chrome里調(diào)試JavaScript。源碼:vscode-chrome-debug糯景。?

Live Server:開啟本地開發(fā)時服務(wù)器嘁圈,為靜態(tài)和動態(tài)頁面提供實時刷新功能。源碼:vscode-chrome-debugvscode-live-server蟀淮。?

Preview on Web Server:提供web服務(wù)器和實時預(yù)覽功能最住。

PHP Server:對測試只能在客戶端運行的JavaScript代碼很有用。

Rest Client:相較于用瀏覽器或者一個CURL程序來測試你的REST API端點怠惶,你可以安裝這個工具涨缚,直接在編輯器里相互性地發(fā)HTTP請求。

7. 框架類插件

對于大多數(shù)項目策治,你會使用合適的框架去構(gòu)建你的代碼脓魏,以減少開發(fā)時間兰吟。VS Code通過插件對大多數(shù)主流框架都做了支持。然而茂翔,仍有一些特定框架沒有得到完全的支持混蔼。下面是一些提供了強大功能的VS Code插件。

Angular 6:提供Angular 6的代碼片段珊燎,支持TypeScript惭嚣、HTML、Angular Material ngRx悔政、RxJS和Flex Layout晚吞。目前有220多萬的下載量和172個Angular代碼片段。

Angular v5 snippets:提供針對TypeScript谋国、RxJS载矿、HTML和Docker文件的代碼片段。目前有270多萬的下載量烹卒。

React Native/React/Redux snippets for es6/es7:提供對這些框架的ES6/ES7語法的代碼片段。

React Native Tools:為React Native框架提供代碼智能提示弯洗、命令行工具和調(diào)試特性旅急。

Vetur:為Vue框架提供語法高亮、代碼片段牡整、Emmet藐吮、代碼檢測、智能提示和調(diào)試支持逃贝。它帶有很好的發(fā)布在GitBook上的文檔谣辞。

Ember:為Ember提供了命令行支持和智能提示。安裝完后沐扳,所有ember cli的命令可直接在VS Code自己的命令行列表中使用泥从。

Cordava Tools:支持Cordava插件和Ionic框架,提供基于Cordova的項目的智能提示沪摄、調(diào)試已經(jīng)其他特性的支持躯嫉。

jQuery Code Snippets:提供了超過130個jQuery的代碼片段,使用jq前綴來激活杨拐。

8. 測試類插件

測試是軟件開發(fā)中的關(guān)鍵環(huán)節(jié)祈餐,對于生產(chǎn)階段的項目來說更是如此。你可以通過閱讀我們的指南-JavaScript測試:單元測試 vs 功能測試 vs 集成測試-來獲得對JavaScript測試的一個概觀哄陶。這里有一些針對測試的VS Code插件:

Mocha sidebar:利用Mocha庫為項目提供單元測試帆阳。這個框架幫你直接在代碼里跑測試,把錯誤信息以裝飾器形式顯示出來屋吨。

ES Mocha Snippets:提供ES6語法的Mocha代碼片段蜒谤。這個插件的重點在于利用箭頭函數(shù)山宾,盡可能減少花括號的使用,保持代碼的緊湊芭逝∷担可通過設(shè)置允許使用分號。

Jasmine Code Snippets:針對Jasmine測試框架的代碼片段旬盯。

Protractor Snippets:針對Protractor端到端測試框架的代碼片段台妆。支持JavaScript和TypeScript。

Node TDD:為Node和JavaScript項目提供測試驅(qū)動開發(fā)的支持胖翰。能在源碼的更新后接剩,立即觸發(fā)自動化測試的構(gòu)建。源碼:node-tdd

9. 其他棒棒的插件

我把下一批VS Code的插件歸為"厲害的"(awesome)這一類萨咳,因為這個描述恰到好處懊缺。

Quokka.js:非常厲害的調(diào)試工具,為JavaScript提供了快速構(gòu)建原型的演練場培他,并且附帶有很好的文檔鹃两。

Paste as JSON:快速地將JSON數(shù)據(jù)轉(zhuǎn)為JavaScript代碼。源碼:quick-type舀凛。?

Code Metrics:這是另一個非常棒的插件俊扳,計算JavaScript和TypeScript代碼中復(fù)雜度。源碼:codemetrics猛遍。?

10. 插件包

現(xiàn)在我們來到了最后一類馋记,我想讓你知道,VS Code市場有有一個插件包的分類懊烤。本質(zhì)上梯醒,它們是相關(guān)聯(lián)的一些VS Code插件的集合,打成一個包腌紧,方便安裝茸习。這里有些較好的:

Nodejs Extension Pack:這個包里有ESLint、npm壁肋、JavaScript(ES6) snippets逮光、Search node_modules、NPM IntelliSense和Path IntelliSense墩划。

VS Code for Node.js - Development Pack:這個包含NPM IntelliSense涕刚、ESLint、Debugger for Chrome乙帮、Code Metrics杜漠、Docker和Import Cost。

Vue.js Extension Pack:一些Vue和JavaScript插件的集合。目前它含有12個VS Code的插件驾茴,有一些之前我們沒有提到的盼樟,比如auto-rename-tag和auto-close-tag。

Ionic Extesion Pack:這個包里有針對Ionic锈至、Angular晨缴、RxJS、Cordova和HTML開發(fā)的插件峡捡。

SpreadJS純前端表格組件:可嵌入你系統(tǒng)的在線Excel击碗,功能布局與 Excel 高度類似,完全兼容 Excel 的 450 種公式和 92 種圖表们拙。

總結(jié)

VS Code擁有大量的高質(zhì)量插件稍途,這讓它在JavaScript開發(fā)者群體中廣受歡迎。寫JavaScript代碼砚婆,再沒有比現(xiàn)在更容易了械拍。

像ESLint這樣的插件,幫助你避免代碼中的常見錯誤装盯;Debugger for Chrome坷虑,幫助你更容易地調(diào)試代碼;帶有智能提示的Node.js插件幫助你正確引用模塊埂奈;像Live Server和REST client這樣的可用工具迄损,讓你在完成工作時減少了對外部工具的依賴挥转;再比如SpreadJS純前端表格控件共屈,讓在線Excel嵌入您的應(yīng)用。所有這些工具拗引,都極大地加快了你的迭代流程。

我希望這些列表讓你接觸到新的VS Code插件矾削,對你的工作流程有幫助。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末哼凯,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子断部,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件她渴,死亡現(xiàn)場離奇詭異达址,居然都是意外死亡,警方通過查閱死者的電腦和手機趁耗,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進店門沉唠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人苛败,你說我怎么就攤上這事满葛。” “怎么了著拭?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵纱扭,是天一觀的道長。 經(jīng)常有香客問我儡遮,道長乳蛾,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任鄙币,我火速辦了婚禮肃叶,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘十嘿。我一直安慰自己因惭,他們只是感情好,可當我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布绩衷。 她就那樣靜靜地躺著蹦魔,像睡著了一般。 火紅的嫁衣襯著肌膚如雪咳燕。 梳的紋絲不亂的頭發(fā)上勿决,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天,我揣著相機與錄音招盲,去河邊找鬼。 笑死曹货,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的顶籽。 我是一名探鬼主播玩般,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼壤短,長吁一口氣:“原來是場噩夢啊……” “哼设拟!你這毒婦竟也來了久脯?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤帘撰,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后摧找,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡蹬耘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年综苔,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片堡牡。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡晤柄,死狀恐怖妖胀,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情爬坑,我是刑警寧澤妇垢,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布肉康,位于F島的核電站吼和,受9級特大地震影響骑素,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜末捣,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一箩做、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧安吁,春花似錦燃辖、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽观谦。三九已至,卻和暖如春捉偏,著一層夾襖步出監(jiān)牢的瞬間泻红,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工讹躯, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留潮梯,地道東北人惨恭。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像萝究,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子帆竹,可洞房花燭夜當晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理业舍,服務(wù)發(fā)現(xiàn)升酣,斷路器,智...
    卡卡羅2017閱讀 134,672評論 18 139
  • 經(jīng)常聽朋友說衅谷,這道題你怎么不會,這么簡單蚀苛!駕照考試很簡單,你怎么還沒過堵未,難道是你沒有努力盏触,沒有用心吧雌芽!好吧...
    肆4捌閱讀 281評論 0 0
  • [中] 吳曉波 著 浙江大學出版社 看這本書之前膘怕,我特地翻查了自己的QQ號是什么時間注冊的岛心,第一次登陸QQ原來是在...
    QE121閱讀 360評論 0 0
  • 今日計劃 冥想,瑜伽,英語娘荡。 充足睡眠争群,英語學習大年。中午兒子自己乘車去打網(wǎng)球轻要,我下午三點出發(fā)上英語課。 工作郵件正常...
    Angelaxu閱讀 119評論 0 0
  • 突然覺得,被喜歡的人寫進文字里粹庞,是多么美好的一件事(*?︶?*)革半。多幸運才能遇到這么可愛的人兒呀A髀搿A础普泡!
    心是抑郁的藍閱讀 128評論 0 0