Visual Studio Code Javascript环境搭建

下载和安装

下载

下载地址:VSCodeUserSetup-x64-1.31.1.exe

安装

按引导安装即可


第一次启动的画面

个性化 VS Code 插件与配置

Prettier Code Formatter

使用 Prettier 来统一代码风格,当保存 HTML/CSS/JavaScript 文件时,它会自动调整代码格式。这样,不用担心代码格式问题。由于 Prettier 本身不能个性化配置,有时可能会引起不适,但是至少保证团队成员可以轻易统一代码风格。


Prettier Code Formatter

npm

npm 插件可以检查 package.json 中所定义的 npm 模块与实际安装的 npm 模块是否一致:

  • package.json 中定义了,但是实际未安装
  • package.json 中未定义,但是实际安装了
  • package.json 中定义的版本与实际安装的版本不一致

npm Intellisense

npm Intellisense 插件会为 package.json 建立索引,这样当我 require 某个模块时,它可以自动补全。

Bracket Pair Colorizer

Bracket Pair Colorizer 可以为代码中的匹配的括号自动着色,以不同的颜色进行区分,这样我们可以轻易地辨别某个代码块的开始与结束。

Auto Close Tag

Auto Close Tag 插件的功能非常简单,它可以自动补全 HTML/XML 的关闭标签。

GitLens

我非常喜欢 Gitlens,因为它可以帮助我快速理解代码的修改历史。
Current Line Blame:查看当前行代码的结尾查看最近一次 commit 的姓名、时间以及信息

Markdown All in One

Markdown All in One 插件帮助我编写 README 以及其他 MarkDown 文件。我尤其喜欢它处理列表以及表格的方式

用户配置

除了安装各种各样的插件,我们还可以通过配置 VS Code 的 User Settings 来个性化我们的 VS Code。

字体设置

我非常喜欢带有 ligatures(合字、连字、连结字或合体字)的字体。ligatures 就是将多于一个字母的合成一个字形。我主要使用Fira Code作为我编程所使用的字体,如下图中的
=>

===


image

我的字体配置如下:


image

关于缩进,我是这样配置的:

image

import 路径移动或者重命名时,自动更新:

image

user-settings.json

下面是我的 VS Code 的配置文件user-settings.json:

image

如果你想知道更多的 VS Code 使用技巧,可以查看VSCode Can Do That。

JavaScript开发者必备的VS Code插件

好的代码插件可以让工作效率翻倍,心情也更加舒畅!

代码片段(Snippet)插件

当你第一次安装VS Code,它会提供基本的针对JavaScript/TypeScript的代码片段支持。当你要从事更加前沿的开发的时候,你就需要一些额外的代码片段插件来辅助你编写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和其它BDD测试框架的代码片段。

语法插件

VS Code自带的针对JavaScript的语法高亮已经相当不错。你可以安装不同的主题来改变代码的颜色。不过,如果你想要更好的可读性,可以安装代码高亮插件。这里有一些推荐:

  • JavaScript Atom Grammar:该插件将Visual Studio Code自带的JavaScript语法替换成了Atom编辑器的版本。
  • Babel JavaScript:支持 ES201x JavaScript、React、FlowType和GraphQL代码的语法高亮。
  • DotENV:如果你使用Node,你需要它。DotEnv提供.env文件的语法高亮。

代码风格检查插件

为了保证整个团队代码格式的一致性,使用一个代码风格检查工具可以做到。ESLint是最流行的一个工具,因为它支持非常多的代码风格,包括标准的、Google和Airbnb。下面列出一些推荐的插件:

  • ESLint:这个是最流行的代码风格检查插件,有超过670万的安装量。你可以在.eslintrc.json中配置。
  • JSHint:JSHint的代码风格检查插件。在项目的根目录下面,用.jshintrcfile配置。
  • JavaScript Standard Style: 一个无需配置的自带非常严格规则的代码风格检查插件。它强制要求你所有代码要遵循标准规则。
  • JSLint:JSLint的代码风格检查插件。

如果你想要了解各个插件的优缺点,可以看看这篇博客JavaScript代码风格检查插件大评比。

Node插件

每一个JavaScript项目至少需要安装一个Node包。这里推荐一些针对Node的插件:

  • npm:使用package.json来验证已经安装的模块,确保已经安装的模块版本号正确,标记那些安装了但是没有在package.json列出来的包,以及那些还没有安装的包。Node.js Modules IntelliSense:为JavaScript和TypeScript模块自动补全import语句。


  • Path IntelliSense:虽然并不是真的和Node相关,这个插件可以自动补全文件名,可以在输入时对本地文件进行智能提示。

  • Node exec:运行你执行当前的Node文件或者选中的部分代码。

  • View Node Package:通过此插件可以快速查看一个Node包的源代码。-

  • Node Readme:快速打开npm包文档。

  • Search node_modules:搜索node_modules里面的代码,标准的搜索是不会包含该文件夹的。
  • Import Cost:显示引入的包的大小

代码格式化插件

你也许会发现,有时后复制粘贴完一段代码后,缩进的格式变乱,需要一行一行的调整十分麻烦。这个时候,你肯定想要一个代码格式化工具。

  • Beautify:安装量超过230万,Beautify是jsBeautifier的插件,支持JavaScript、JSON、CSS和HTML一键格式化。
  • Prettier Code Formatter:安装量超过150万,支持JavaScript、TypeScript和CSS的格式化,使用Prettier(一个深受大家喜爱的格式化插件)。
  • JS Refactor:提供了许多重构JavaScript 代码的方法,例如提取代码中的变量和方法,将函数转换为使用箭头函数或模板字面量和将函数导出。
  • JavaScript Booster:一个非常棒的重构工具,比如将var替换为const或则let,移除无用的else语句,将变量声明和变量初始化合并。应该说很大程度上受到Webstorm的启发。

浏览器插件

除非你直接在控制台写JavaScript代码,大多数时候是在浏览器中执行的。也就是说,每一次代码更新,你都需要刷新页面来重写载入代码。如果一直手动操作,是很繁琐的。我们可以用插件来替代。

  • Debugger for Chrome:你只需要在代码编辑器中设置断点,在浏览器中会在断点处暂停。
  • Live Server:在本地开发环境中,实时重新加载(reload)页面。
  • Preview on Web Server:提供web服务器和实时预览。
  • PHP Server:对于仅需要在客户端运行JavaScript 代码做测试非常有用。
  • Rest Client:你不需要使用浏览器或则一个CURL程序来测试REST API,通过Rest Client可以在编辑器内交互式运行HTTP请求。

框架插件

对于大多数项目,为了节省开发时间,你往往会使用一个合适的开发框架来快速开发。在VS Code上,大多数框架都有相应的插件支持。但是依然有很多框架并没有对应的插件。

  • Angular 6:超过220万的安装量,支持TypeScript、HTML、Angular Material ngRx、RxJS和Flex Layout。并且有172个Angular的代码片段。
  • Angular v5 snippets:超过270万的安装量,提供 TypeScript、RxJS、HTML和Docker文件的代码片段。
  • React Native/React/Redux snippets for es6/es7:为这些框架提供ES6/ES7语法的代码片段。
  • React Native Tools:提供智能提示、命令行工具和Debugging功能。
  • Vetur:为Vue框架提供语法高亮、代码片段、Emmet、格式化、代码风格检查、智能提示、调试帮助等。有非常详细的文档: vetur。
  • Ember:为Ember提供命令工具和智能提示。安装后,所有的ember cli命令都可以使用。
  • Cordova Tools:为Cordova插件和Ionic框架提供支持。提供代码智能提示、调试辅助以及其他特性。
  • jQuery Code Snippets:提供超过130个jQuery代码片段。

测试插件

在软件开发中,测试是必可不少的一个环节,特别是那些要上线到生产环境的项目。你可以看看我们这篇讲测试的文章: JavaScript Testing: Unit vs Functional vs Integration Tests。下面是一些流行的测试插件:

  • Mocha sidebar:使用Mocha库来提供测试支持。使用该插件可以直接在代码中运行测试并将提示错误。
  • ES6 Mocha Snippets:提供ES6语法的 Mocha代码片段。充分利用箭头函数,尽量不使用大括号来保持代码的简洁,可配置允许使用分号。
  • Jasmine Code Snippets:Jasmine测试框架的代码片段。
  • Protractor Snippets:Protractor框架的端到端(end-to-end)测试片段,支持JavaScript和Typescript。
  • Node TDD:为Node和JavaScript项目提供test-driven development支持。在代码更新的时候可以自动触发代码的测试。

其它很酷的插件

我把它们分类到awesome类别,是因为它们真的很酷。

  • Quokka.js:一个很棒的调试工具,可以为您正在编写的代码提供实时反馈,能够预览变量的函数和计算值结果。请查看文档:文档
  • Paste as JSON:快速将JSON数据转换为JavaScript代码。
  • Code Metrics:这是一个用来计算JavaScript和TypeScript代码复杂度的插件。
image

插件包

VS Code的插件市场有一个类型叫插件包。它实际上已一个相互关联的插件的集合,方便一起安装,协同使用。

  • Nodejs Extension Pack:包含了ESLint、npm、JavaScript(ES6)代码片段、node_modules搜索、NPM智能提示和文件路径智能提示。
  • VS Code for Node.js – Development Pack :NPM智能提示,ESLint,Chrome调试器,Code Metrics,Docker和导入包的开销计算。
  • Vue.js Extension Pack:包含大约12个VS Code插件,有些在本文没有提到,比如auto-rename-tag和auto-close-tag。Ionic Extesion Pack:包含许多用于Ionic、Angular、RxJS、Cordova和HTML开发的插件。

结语

VS Code能够如此流行的一个原因就是拥有大量的高质量插件。它前所未有的提高了编码的效率。比如ESLint助你减少代码失误,Debugger for Chrome让你更加方便去Debugging。Node.js的智能引入提示让你可以让你正确引入所需模块,Live Server和 REST Client可以让你省去频繁切换到外部工具的麻烦。我希望今天介绍的这些插件可以帮助你提高工作效率

更多参考

高效开发者是如何个性化 VS Code 插件与配置的?
10种JavaScript开发者必备的VS Code插件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容