diff --git a/00-前端工具/01-VS Code的使用.md b/00-前端工具/01-VS Code的使用.md index 7970851..37fc18e 100644 --- a/00-前端工具/01-VS Code的使用.md +++ b/00-前端工具/01-VS Code的使用.md @@ -1,11 +1,12 @@ ## 前言 -> 本文的最新内容,更新于2020-05-23。大家完全不用担心这篇文章会过时,因为随着 VS Code 的版本更新和插件更新,本文也会随之更新。 +> 本文的最新内容,更新于 2020-05-23。大家完全不用担心这篇文章会过时,因为随着 VS Code 的版本更新和插件更新,本文也会随之更新。 > 本文的最新内容,也会在[GitHub](https://github.com/qianguyihao/Web/blob/master/00-%E5%89%8D%E7%AB%AF%E5%B7%A5%E5%85%B7/01-VS%20Code%E7%9A%84%E4%BD%BF%E7%94%A8.md)上同步更新,欢迎 star。 +如果你是做前端开发(JavaScript 编程语言为主),则完全可以将 VS Code 作为「**主力开发工具**」。这款软件是为前端同学量身定制的。由于它实在是太好用了,越来越多的人正在使用它。 -如果你是做前端开发(JavaScript 编程语言为主),则完全可以将 VS Code 作为「**主力开发工具**」。这款软件是为前端同学量身定制的。但由于它实在是太好用了,越来越多的人正在使用它。 +有一点你可能会感到惊讶:VS Code 这款软件本身,就是用 JavaScript 语言编写的(具体请自行查阅相关的客户端开发框架 `Electron`)。Jeff Atwood 在 2007 年提出了著名的 Atwood 定律:**任何能够用 JavaScript 实现的应用系统,最终都必将用 JavaScript 实现**。 Jeff Atwood 是谁不重要(他是 Stack Overflow 网站的联合创始人),重要的是这条定律。 如果你是做其他语言方向的开发,并且不需要太复杂的集成开发环境,那么,你可以把 VS Code 作为「**代码编辑器**」来使用,纵享丝滑。 @@ -15,100 +16,95 @@ 写下这篇文章,是顺势而为。 - ## 一、VS Code 的介绍 -VS Code 的全称是 Visual Studio Code,是一款开源的、免费的、跨平台的、高性能的、轻量级的代码编辑器。它在性能、语言支持、开源社区方面,都做的很不错。 +VS Code 的全称是 Visual Studio Code,是一款开源的、免费的、跨平台的、高性能的、轻量级的代码编辑器。它在性能、语言支持、开源社区方面,都做得很不错。 -### 编辑器 与 IDE +### IDE 与 编辑器 `IDE`和`编辑器`是有区别的: -- **IDE** :对代码会有较好的智能提示,同时侧重于工程项目,对项目的开发、调试工作有较好的图像化界面的支持,因此比较笨重。比如 Eclipse 的定位就是 IDE。 +- **IDE**(Integrated Development Environment,集成开发环境) :对代码会有较好的智能提示和方法跳转,同时侧重于工程项目,对项目的开发、调试工作有较好的图像化界面的支持,因此比较笨重。比如 Eclipse 的定位就是 IDE。 -- **编辑器**:要相对轻量许多,侧重于文本的编辑。比如 Sublime Text 的定位就是编辑器。再比如 Windows 系统自带的「记事本」就是最简单的编辑器。 +- **编辑器**:要相对轻量许多,侧重于文本的编辑。比如 Sublime Text 的定位就是编辑器。再比如 Windows 系统自带的「记事本」就是最简单的编辑器。 -需要注意的是,VS Code 的定位虽然是`编辑器`,而非`IDE`,但 VS Code 又比一般的编辑器的功能要丰富许多。可以这样理解:VS Code的体量是介于编辑器和IDE之间。 +需要注意的是,VS Code 的定位是`编辑器`,而非`IDE`,但 VS Code 又比一般的编辑器的功能要丰富许多。可以这样理解:VS Code 的体量是介于编辑器和 IDE 之间。 -### VS Code 的一些补充 +### VS Code 的特点 -- VS Code 的使命,是让开发者在编辑器里拥有 IDE 那样的开发体验,比如代码的智能提示、语法检查、图形化的调试工具、插件扩展、版本管理等。 +- VS Code 的使命,是让开发者在编辑器里拥有 IDE 那样的开发体验,比如代码的智能提示、语法检查、图形化的调试工具、插件扩展、版本管理等。 -- VS Code 的源代码以 MIT 协议开源。 +- 跨平台支持 MacOS、Windows 和 Linux 等平台。 -- VS Code 自带了 TypeScript 和 Node.js 的支持。也就是说,你在书写 JS 和 TS 时,是自带智能提示的。 +- VS Code 的源代码以 MIT 协议开源。 -- 有一点你可能不知道,VS Code 这个客户端软件是用 js 语言开发出来的(具体请自行查阅相关的开发框架 `Electron`)。有句话说得好:能用 js 实现的功能,最终一定会用 js 实现。 +- 支持第三方插件,功能强大。 + +- VS Code 自带了 TypeScript 和 Node.js 的支持。也就是说,你在书写 JS 和 TS 时,是自带智能提示的。当然,其他的语言,你可以安装相应的**扩展包**插件,也可以有智能提示。 ### 前端利器之争: VS Code 与 WebStorm 前端小白最喜欢问的一个问题是:哪个编辑器/IDE 好用?是 VS Code 还是 WebStorm (WebStorm 其实是 IntelliJ IDEA 的定制版)?我来做个对比: -- **哪个更酷**:显然 VS Code 更酷。 +- **哪个更酷**:显然 VS Code 更酷。 -- **内存占用情况**:根据我的观察,VS Code 是很占内存的(尤其是当你打开多个窗口的时候),但如果你的内存条够用的话,使用起来是不会有任何卡顿的感觉的。相比之下,IntelliJ IDEA 不仅非常占内存,而且还非常卡顿。如果你想换个轻量级的、不占内存的编辑器,最好还是换成「Sublime Text」编辑器。 +- **内存占用情况**:根据我的观察,VS Code 是很占内存的(尤其是当你打开多个窗口的时候),但如果你的内存条够用的话,使用起来是不会有任何卡顿的感觉的。相比之下,IntelliJ IDEA 不仅非常占内存,而且还非常卡顿。如果你想换个轻量级的、不占内存的编辑器,最好还是换成「Sublime Text」编辑器。 -- **使用比例**:当然是 VS Code 更胜一筹。先不说别的,我就拿数据说话,我目前所在的前端团队有 100 人左右,绝大部分前端同学都在用 VS Code,妥妥的。 +- **使用比例**:当然是 VS Code 更胜一筹。先不说别的,我就拿数据说话,我目前所在的前端团队有 100 人左右,绝大部分前端同学都在用 VS Code,妥妥的。 所以,如果你以后还问这个问题,那就真有些掉底了。 ### VS Code 的安装 -- VS Code 官网: +- VS Code 官网: VS Code 的安装很简单,直接去官网下载安装包,然后双击安装即可。 -![](http://img.smyhvae.com/20190313_1750_2.png) +![](http://img.smyhvae.com/20190313_1750_3.png) -上图中,直接点击 download 下载安装即可。 +上图中,直接点击 download,一键下载安装即可。 ## 二、VS Code 快捷键 VS Code 用得熟不熟,首先就看你是否会用快捷键。以下列出的内容,都是常用快捷键,而加粗部分的快捷键,使用频率则非常高。 -任何工具,掌握 10%的技能,足矣应对 90%的工作。熟练使用这 10%,你的工具和你,就足矣露出锋芒。 +任何工具,掌握 20%的技能,足矣应对 80% 的工作。熟练使用这 20%。既然如此,你可能会问:那就只保留 20%的特性,不久可以满足 80%的用户了吗? +但我想说的是:**那从来都不是同样的 20%**,每个人都用到不同的功能。 +掌握下面这些高频核心快捷键,你和你的工具,就足矣露出锋芒。 ### 工作区快捷键 -| Mac 快捷键 | Win 快捷键 | 作用 | 备注 | -| :------------------- | :----------------------- | :-------------------------------------------- | :------------------- | -| **Cmd + Shift + P** | **Ctrl + Shift + P**,F1 | 显示命令面板 | | -| **Cmd + B** | **Ctrl + B** | 显示/隐藏侧边栏 | 很实用 | -| | | | | -| `Cmd + \` | `Ctrl + \` | **创建多个编辑器** | 【重要】抄代码利器 | -| **Cmd + 1、2** | **Ctrl + 1、2** | 聚焦到第1、第2个编辑器 | 同上重要 | -| | | | | -| **cmd +/-** | **ctrl +/-** | 将工作区放大/缩小(包括代码字体、左侧导航栏) | 在投影仪场景经常用到 | -| Cmd + J | Ctrl + J | 显示/隐藏控制台 | | -| | | | | -| **Cmd + Shift + N** | **Ctrl + Shift + N** | 重新开一个软件的窗口 | 很常用 | -| Cmd + Shift + W | Ctrl + Shift + W | 关闭软件的当前窗口 | | -| | | | | -| Cmd + N | Ctrl + N | 新建文件 | | -| Cmd + W | Ctrl + W | 关闭当前文件 | | - - +| Mac 快捷键 | Win 快捷键 | 作用 | 备注 | +| :--------------------- | :----------------------- | :-------------------------------------------- | :------------------- | +| **Cmd + Shift + P** | **Ctrl + Shift + P**,F1 | 显示命令面板 | | +| **Cmd + B** | **Ctrl + B** | 显示/隐藏侧边栏 | 很实用 | +| | | | | +| `Cmd + \` | `Ctrl + \` | **创建多个编辑器** | 【重要】抄代码利器 | +| **Cmd + 1、2** | **Ctrl + 1、2** | 聚焦到第 1、第 2 个编辑器 | 同上重要 | +| | | | | +| **cmd +/-** | **ctrl +/-** | 将工作区放大/缩小(包括代码字体、左侧导航栏) | 在投影仪场景经常用到 | +| Cmd + J | Ctrl + J | 显示/隐藏控制台 | | +| | | | | +| **Cmd + Shift + N** | **Ctrl + Shift + N** | 重新开一个软件的窗口 | 很常用 | +| Cmd + Shift + W | Ctrl + Shift + W | 关闭软件的当前窗口 | | +| | | | | +| Cmd + N | Ctrl + N | 新建文件 | | +| Cmd + W | Ctrl + W | 关闭当前文件 | | ### 跳转操作 - - -| Mac 快捷键 | Win 快捷键 | 作用 | 备注 | -| :---------------------------- | :--------------------- | :----------------------------------- | :------------------- | -| Cmd + ` | | 在同一个软件的多个窗口之间切换 | | -| | | | | -| **Cmd + Option + 左右方向键** | Ctrl + Pagedown/Pageup | 在已经打开的文件之间进行**切换** | 非常实用 | -| Ctrl + Tab | Ctrl + Tab | 在已经打开的文件之间进行跳转 | 不如上面的快捷键快 | -| | | | | -| Cmd + Shift + O | Ctrl + shift + O | 在当前文件的各种**方法之间**进行跳转 | | -| Ctrl + G | Ctrl + G | 跳转到指定行 | | -| `Cmd+Shift+\` | `Ctrl+Shift+\` | 跳转到匹配的括号 | | - - - - +| Mac 快捷键 | Win 快捷键 | 作用 | 备注 | +| :----------------------------------------- | :--------------------- | :----------------------------------- | :----------------- | +| Cmd + ` | | 在同一个软件的多个窗口之间切换 | +| | | | | +| **Cmd + Option + 左右方向键** | Ctrl + Pagedown/Pageup | 在已经打开的文件之间进行**切换** | 非常实用 | +| Ctrl + Tab | Ctrl + Tab | 在已经打开的文件之间进行跳转 | 不如上面的快捷键快 | +| | | | | +| Cmd + Shift + O | Ctrl + shift + O | 在当前文件的各种**方法之间**进行跳转 | | +| Ctrl + G | Ctrl + G | 跳转到指定行 | | +| `Cmd+Shift+\` | `Ctrl+Shift+\` | 跳转到匹配的括号 | | ### 移动光标 @@ -125,8 +121,6 @@ VS Code 用得熟不熟,首先就看你是否会用快捷键。以下列出的 | | | | | | Cmd + Shift + \ | | 在**代码块**之间移动光标 | | - - ### 编辑操作 | Mac 快捷键 | Win 快捷键 | 作用 | 备注 | @@ -140,7 +134,6 @@ VS Code 用得熟不熟,首先就看你是否会用快捷键。以下列出的 | Option + Shift + ↑ | Alt + Shift + ↑ | 将代码向上复制 | | | **Option + Shift + ↓** | **Alt + Shift + ↓** | 将代码向下复制 | 写重复代码的利器 | - ### 多光标编辑 | Mac 快捷键 | Win 快捷键 | 作用 | 备注 | @@ -150,13 +143,11 @@ VS Code 用得熟不熟,首先就看你是否会用快捷键。以下列出的 | Option + Shift + 鼠标拖动 | Alt + Shift + 鼠标拖动 | 在选中区域的每一行末尾,出现光标 | | | Cmd + Shift + L | Ctrl + Shift + L | 在选中文本的所有相同内容处,出现光标 | | - 其他的多光标编辑操作:(很重要) -- 选中某个文本,然后反复按住快捷键「 **Cmd + D** 」键(windows 用户是按住「**Ctrl + D**」键), 即可将全文中相同的词逐一加入选择。 - -- 选中一堆文本后,按住「**Option + Shift + i**」键(windows 用户是按住「**Alt + Shift + I**」键),既可在**每一行的末尾**都创建一个光标。 +- 选中某个文本,然后反复按住快捷键「 **Cmd + D** 」键(windows 用户是按住「**Ctrl + D**」键), 即可将全文中相同的词逐一加入选择。 +- 选中一堆文本后,按住「**Option + Shift + i**」键(windows 用户是按住「**Alt + Shift + I**」键),既可在**每一行的末尾**都创建一个光标。 ### 删除操作 @@ -167,7 +158,7 @@ VS Code 用得熟不熟,首先就看你是否会用快捷键。以下列出的 | **option + Backspace** | **Ctrl + Backspace** | 删除光标之前的一个单词 | 英文有效,很常用 | | option + delete | Ctrl + delete | 删除光标之后的一个单词 | | | | | | | -| **Cmd + Backspace** | | 删除光标之前的整行内容 | 很常用 | +| **Cmd + Backspace** | | 删除光标之前的整行内容 | 很常用 | | Cmd + delete | | 删除光标之后的整行内容 | | | | | | | @@ -193,7 +184,6 @@ VS Code 用得熟不熟,首先就看你是否会用快捷键。以下列出的 | Cmd + F | Ctrl + F | 在当前文件中搜索,光标在搜索框里 | | | **Cmd + G** | **F3** | 在当前文件中搜索,光标仍停留在编辑器里 | 很巧妙 | - ### 自定义快捷键 按住快捷键「Cmd + Shift + P」,弹出命令面板,在命令面板中输入“快捷键”,可以进入快捷键的设置。 @@ -214,7 +204,7 @@ VS Code 用得熟不熟,首先就看你是否会用快捷键。以下列出的 ### 快捷键参考链接 -- 快捷键速查表[官方]: +- 快捷键速查表[官方]: ## 四、命令面板的使用 @@ -250,9 +240,9 @@ Mac 用户按住快捷键 `Cmd+Shift+P` (Windows 用户按住快捷键`Ctrl+Sh (2)使用命令行: -- `code`命令:启动 VS Code 软件 +- `code`命令:启动 VS Code 软件 -- `code pathName/fileName`命令:通过 VS Code 软件打开指定目录/指定文件。 +- `code pathName/fileName`命令:通过 VS Code 软件打开指定目录/指定文件。 ## 五、VS Code 的常见配置项 @@ -337,15 +327,15 @@ VS Code 会根据你所打开的文件来决定该使用空格还是制表。也 常见的设置项如下: -- **editor.detectIndentation**:自动检测(默认开启)。截图如下: +- **editor.detectIndentation**:自动检测(默认开启)。截图如下: ![](http://img.smyhvae.com/20190417_2205.png) -- **editor.insertSpaces**:按 Tab 键时插入空格(默认)。截图如下: +- **editor.insertSpaces**:按 Tab 键时插入空格(默认)。截图如下: ![](http://img.smyhvae.com/20190417_2207.png) -- **editor.tabSize**:一个制表符默认等于四个空格。截图如下: +- **editor.tabSize**:一个制表符默认等于四个空格。截图如下: ![](http://img.smyhvae.com/20190417_2209.png) @@ -387,11 +377,11 @@ VS Code 自带的对比功能并不够强大,我们可以安装插件`comparei ### 14、鼠标操作 -- 在当前行的位置,鼠标三击,可以选中当前行。 +- 在当前行的位置,鼠标三击,可以选中当前行。 -- 用鼠标单击文件的**行号**,可以选中当前行。 +- 用鼠标单击文件的**行号**,可以选中当前行。 -- 在某个**行号**的位置,**上下移动鼠标,可以选中多行**。 +- 在某个**行号**的位置,**上下移动鼠标,可以选中多行**。 ### 15、重构 @@ -409,9 +399,9 @@ VS Code 自带的对比功能并不够强大,我们可以安装插件`comparei 在上面的快捷键列表中,我们已经知道如下快捷键: -- Cmd + F(Win 用户是 Ctrl + F):在当前文件中搜索,光标在搜索框里 +- Cmd + F(Win 用户是 Ctrl + F):在当前文件中搜索,光标在搜索框里 -- Cmd + G(Win 用户是 F3):在当前文件中搜索,光标仍停留在编辑器里 +- Cmd + G(Win 用户是 F3):在当前文件中搜索,光标仍停留在编辑器里 另外,你可能会注意到,搜索框里有很多按钮,每个按钮都对应着不同的功能,如下图所示: @@ -427,7 +417,7 @@ VS Code 自带的对比功能并不够强大,我们可以安装插件`comparei 在上面的快捷键列表中,我们已经知道如下快捷键: -- Cmd + Shift + F(Win 用户是 Ctrl + Shift +F):在全局的文件夹中进行搜索。效果如下: +- Cmd + Shift + F(Win 用户是 Ctrl + Shift +F):在全局的文件夹中进行搜索。效果如下: ![](http://img.smyhvae.com/20190415_2107.png) @@ -469,9 +459,9 @@ VS Code 自带了 Git 版本管理,如下图所示: 这个文件夹里可能包含以下集中文件: -- `settings.json`:工作空间设置。只针对当前项目有效。比如说,我可以在这里面要求当前项目的代码统一使用制表符,而不需要要求每一位码农去修改各自的配置文件。 +- `settings.json`:工作空间设置。只针对当前项目有效。比如说,我可以在这里面要求当前项目的代码统一使用制表符,而不需要要求每一位码农去修改各自的配置文件。 -- `sftp.json`:ftp 文件传输的配置。 +- `sftp.json`:ftp 文件传输的配置。 ### 22、自带终端 @@ -561,47 +551,47 @@ VS Code 默认支持 Emmet。更多 Emmet 语法规则,请自行查阅。 (2)配置 `sftp.json`文件。 插件安装完成后,输入快捷键「cmd+shift+P」弹出命令面板,然后输入`sftp:config`,回车,当前工程的`.vscode`文件夹下就会自动生成一个`sftp.json`文件,我们需要在这个文件里配置的内容可以是: -- `host`:服务器的 IP 地址 +- `host`:服务器的 IP 地址 -- `username`:用户名 +- `username`:用户名 -- `privateKeyPath`:存放在本地的已配置好的用于登录工作站的密钥文件(也可以是 ppk 文件) +- `privateKeyPath`:存放在本地的已配置好的用于登录工作站的密钥文件(也可以是 ppk 文件) -- `remotePath`:工作站上与本地工程同步的文件夹路径,需要和本地工程文件根目录同名,且在使用 sftp 上传文件之前,要手动在工作站上 mkdir 生成这个根目录 +- `remotePath`:工作站上与本地工程同步的文件夹路径,需要和本地工程文件根目录同名,且在使用 sftp 上传文件之前,要手动在工作站上 mkdir 生成这个根目录 -- `ignore`:指定在使用 sftp: sync to remote 的时候忽略的文件及文件夹,注意每一行后面有逗号,最后一行没有逗号 +- `ignore`:指定在使用 sftp: sync to remote 的时候忽略的文件及文件夹,注意每一行后面有逗号,最后一行没有逗号 举例如下:(注意,其中的注释需要去掉) ```json { - "host": "192.168.xxx.xxx", //服务器ip - "port": 22, //端口,sftp模式是22 - "username": "", //用户名 - "password": "", //密码 - "protocol": "sftp", //模式 - "agent": null, - "privateKeyPath": null, - "passphrase": null, - "passive": false, - "interactiveAuth": false, - "remotePath": "/root/node/build/", //服务器上的文件地址 - "context": "./server/build", //本地的文件地址 + "host": "192.168.xxx.xxx", //服务器ip + "port": 22, //端口,sftp模式是22 + "username": "", //用户名 + "password": "", //密码 + "protocol": "sftp", //模式 + "agent": null, + "privateKeyPath": null, + "passphrase": null, + "passive": false, + "interactiveAuth": false, + "remotePath": "/root/node/build/", //服务器上的文件地址 + "context": "./server/build", //本地的文件地址 - "uploadOnSave": true, //监听保存并上传 - "syncMode": "update", - "watcher": { - //监听外部文件 - "files": false, //外部文件的绝对路径 - "autoUpload": false, - "autoDelete": false - }, - "ignore": [ - //忽略项 - "**/.vscode/**", - "**/.git/**", - "**/.DS_Store" - ] + "uploadOnSave": true, //监听保存并上传 + "syncMode": "update", + "watcher": { + //监听外部文件 + "files": false, //外部文件的绝对路径 + "autoUpload": false, + "autoDelete": false + }, + "ignore": [ + //忽略项 + "**/.vscode/**", + "**/.git/**", + "**/.DS_Store" + ] } ``` @@ -653,15 +643,13 @@ VS Code 默认支持 Emmet。更多 Emmet 语法规则,请自行查阅。 ## 八、VS Code 插件推荐 -VS Code 有一个很强大的功能就是支持插件扩展。 +VS Code 有一个很强大的功能就是支持插件扩展,让你的编辑器仿佛拥有了三头六臂。 ![](http://img.smyhvae.com/20191108_1553_2.png) 上图中,点击红框部分,即可在输入框里,查找你想要的插件名,然后进行安装。 -我来列举几个常见的插件,这些插件都很实用。 - -顺序越靠前,越实用。 +我来列举几个常见的插件,这些插件都很实用。注意:**顺序越靠前,越实用**。 ### GitLens 【荐】 @@ -669,15 +657,19 @@ VS Code 有一个很强大的功能就是支持插件扩展。 GitLens 在 Git 管理上有很多强大的功能,比如: -- 将光标放置在代码的当前行,可以看到这样代码的提交者是谁,以及提交时间。这一点,是 GitLens 最便捷的功能。 +- 将光标放置在代码的当前行,可以看到这样代码的提交者是谁,以及提交时间。这一点,是 GitLens 最便捷的功能。 -- 查看某个 commit 的代码改动记录 +- 查看某个 commit 的代码改动记录 -- 查看不同的分支 +- 查看不同的分支 -- 可以将两个 commit 进行代码对比 +- 可以将两个 commit 进行代码对比 -- 甚至可以将两个 branch 分支进行整体的代码对比。这一点,简直是 GitLens 最强大的功能。当我们在不同分支 review 代码的时候,就可以用到这一招。 +- 甚至可以将两个 branch 分支进行整体的代码对比。这一点,简直是 GitLens 最强大的功能。当我们在不同分支 review 代码的时候,就可以用到这一招。 + +### Git History + +有些同学习惯使用编辑器中的 Git 管理工具,而不太喜欢要打开另外一个 Git UI 工具的同学,这一款插件满足你查询所有 Git 记录的需求。 ### Live Server 【荐】 @@ -691,7 +683,7 @@ GitLens 在 Git 管理上有很多强大的功能,比如: ### Bracket Pair Colorizer 2:突出显示成对的括号【荐】 -`Bracket Pair Colorizer 2`插件:以不同颜色显示成对的括号,并用连线标注括号范围。 +`Bracket Pair Colorizer 2`插件:以不同颜色显示成对的括号,并用连线标注括号范围。简称**彩虹括号**。 另外,还有个`Rainbow Brackets`插件,也可以突出显示成对的括号。 @@ -715,9 +707,9 @@ VSCode 自带的高亮显示,实在是不够显眼。用插件支持一下吧 参考链接:[vscode 选中后相同内容高亮插件推荐](https://blog.csdn.net/palmer_kai/article/details/79548164) -### Color Manager +### vscode-icons -css 颜色管理。 +vscode-icons 会根据文件的后缀名来显示不同的图标,让你更直观地知道每种文件是什么类型的。 ### Project Manager @@ -741,7 +733,7 @@ css 颜色管理。 ### WakaTime 【荐】 -统计写代码的时间。 +统计在 VS Code 里写代码的时间。 ### Code Time @@ -753,23 +745,61 @@ css 颜色管理。 ### Markdown Preview Github Styling 【荐】 -以 GitHub 风格预览 Markdown 样式。 +以 GitHub 风格预览 Markdown 样式,十分简洁优雅。就像下面这样,左侧书写 Markdown 文本,右侧预览 Markdown 的渲染效果: + +![](http://img.smyhvae.com/20200618_2025.png) ### Markdown Preview Enhanced 预览 Markdown 样式。 -### Settings Sync +### Settings Sync【荐】 -- 地址: +- 地址: -- 作用:多台设备之间,同步 VS Code 配置。通过登录 GitHub 账号来使用这个同步工具。 +- 作用:多台设备之间,同步 VS Code 配置。通过登录 GitHub 账号来使用这个同步工具。 ### vscode-syncing -- 地址: +- 地址: -- 作用:多台设备之间,同步 VS Code 配置。 +- 作用:多台设备之间,同步 VS Code 配置。 + +### Vetur + +Vue 多功能集成插件,包括:语法高亮,智能提示,emmet,错误提示,格式化,自动补全,debugger。VS Code 官方钦定 Vue 插件,Vue 开发者必备。 + +### ES7 React/Redux/GraphQL/React-Native snippets + +React/Redux/react-router 的语法智能提示。 + +### minapp:小程序支持 + +小程序开发必备插件。 + + +### Prettier:代码格式化 + +Prettier是一个代码格式化工具,只关注格式化,但不具备校验功能。在一个多人协同开发的团队中,统一的代码编写规范非常重要。一套规范可以让我们编写的代码达到一致的风格,提高代码的可读性和统一性。自然维护性也会有所提高。 + +### ESLint:代码格式校验 + +日常开发中,建议用可以用 Prettier 做代码格式化,然后用 eslint 做校验。 + +### Beautify + +代码格式化工具。 + + +### JavaScript(ES6) code snippets + +ES6 语法智能提示,支持快速输入。 + +### Search node_modules + +`node_modules`模块里面的文件夹和模块实在是太多了,根本不好找。好在安装 `Search node_modules` 这个插件后,输入快捷键「Cmd + Shift + P」,然后输入 `node_modules`,在弹出的选项中选择 `Search node_modules`,即可搜索 node_modules 里的模块。 + +![](http://img.smyhvae.com/20200618_2100.png) ### indent-rainbow:突出显示缩进 @@ -779,6 +809,66 @@ css 颜色管理。 ![](http://img.smyhvae.com/20190418_1958.png) +### javascript console utils:快速打印 log 日志【荐】 + +安装这个插件后,当我们按住快捷键「Cmd + Shift + L」后,即可自动出现日志 `console.log()`。简直是日志党福音。 + +当我们选中某个变量 `name`,然后按住快捷键「Cmd + Shift + L」,即可自动出现这个变量的日志 `console.log(name)`。 + +其他的同类插件还有:Turbo Console Log。 + +不过,生产环境的代码,还是尽量少打日志比较好,避免出现一些异常。 + +编程有三等境界: + +- 第三等境界是打日志,这是最简单、便捷的方式,略显低级,一般新手或资深程序员偷懒时会用。 + +- 第二等境界是断点调试,在前端、Java、PHP、iOS 开发时非常常用,通过断点调试可以很直观地跟踪代码执行逻辑、调用栈、变量等,是非常实用的技巧。 + +- 第一等境界是测试驱动开发,在写代码之前先写测试。与第二等的断点调试刚好相反,大部分人不是很习惯这种方式,但在国外开发者或者敏捷爱好者看来,这是最高效的开发方式,在保证代码质量、重构等方面非常有帮助,是现代编程开发必不可少的一部分。 + +### Code Spell Checker:单词拼写错误检查 + +这个拼写检查程序的目标是帮助捕获常见的单词拼写错误,可以检测驼峰命名。从此告别 Chinglish. + +### Local History 【荐】 + +维护文件的本地历史记录,强烈建议安装。代码意外丢失时,有时可以救命。 + +![](http://img.smyhvae.com/20200618_2246.png) + + +### Polacode-2020 【荐】 + +可以把代码保存成美观的图片,主题不同,代码配色方案也不同,也可以自己设置边框颜色、大小、阴影。 + +有人可能会说:直接用QQ截图不行吗?可以是可以,但不够美观、不够干净。 + +### Image Preview 【荐】 + +图片预览。鼠标移动到图片url上的时候,会自动显示图片的预览和图片尺寸。 + +### Auto Close Tag、Auto Rename Tag + +自动闭合标签、自动对标签重命名。 + +### Better Comments + +为注释添加更醒目、带分类的色彩。 + +### CSS Peek + +增强 HTML 和 CSS 之间的关联,快速查看该元素上的 CSS 样式。 + +### Vue CSS Peek + +CSS Peek 对 Vue 没有支持,该插件提供了对 Vue 文件的支持。 + +### Color Info + +这个便捷的插件,将为你提供你在 CSS 中使用颜色的相关信息。你只需在颜色上悬停光标,就可以预览色块中色彩模型的(HEX、 RGB、HSL 和 CMYK)相关信息了。 + + ### RemoteHub 不要惊讶,RemoteHub 和 GitLens 是同一个作者开发出来的。 @@ -805,25 +895,31 @@ css 颜色管理。 ### vscode-pigments -### 颜色标注 - - -css 颜色高亮显示。 - ## 八、主题插件 -- [One Dark Pro](https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme) +- Dracula Theme -* Monokai Pro +- Material Theme -* Ayu +- Nebula Theme -* [Snazzy Plus](https://marketplace.visualstudio.com/items?itemName=akarlsten.vscode-snazzy-akarlsten) +- [One Dark Pro](https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme) -* [Dainty](https://marketplace.visualstudio.com/items?itemName=alexanderte.dainty-vscode) +- One Monokai Theme -* `SynthWave '84` +- Monokai Pro +- Ayu + +* [Snazzy Plus](https://marketplace.visualstudio.com/items?itemName=akarlsten.vscode-snazzy-akarlsten) + +* [Dainty](https://marketplace.visualstudio.com/items?itemName=alexanderte.dainty-vscode) + +* `SynthWave '84` + +- GitHub Plus Theme:白色主题 + +- Horizon Theme:红色主题 ## 最后一段 @@ -833,17 +929,22 @@ css 颜色高亮显示。 ## 参考链接 -- [VS Code 折腾记 - (16) 推荐一波实用的插件集](https://juejin.im/post/5d74eb5c51882525017787d9) +- [VSCode 插件大全| VSCode 高级玩家之第二篇](https://juejin.im/post/5ea40c6751882573b219777d) -- [VSCode 前端必备插件,有可能你装了却不知道如何使用?](https://juejin.im/post/5db66672f265da4d0e009aad) +- -- [能让你开发效率翻倍的 VSCode 插件配置(上)](https://juejin.im/post/5a08d1d6f265da430f31950e) +- [如何让 VS Code 更好用10倍?这里有一份VS Code 新手指南](https://zhuanlan.zhihu.com/p/99462672) -- [https://segmentfault.com/a/1190000012811886](https://segmentfault.com/a/1190000012811886) +- [VS Code 折腾记 - (16) 推荐一波实用的插件集](https://juejin.im/post/5d74eb5c51882525017787d9) -- [「Vscode」打造类 sublime 的高颜值编辑器](https://idoubi.cc/2019/07/08/vscode-sublime-theme/) +- [VSCode 前端必备插件,有可能你装了却不知道如何使用?](https://juejin.im/post/5db66672f265da4d0e009aad) -- [Mac Vscode快捷键](https://lsqy.tech/2020/03/14/20200314Mac-Vscode%E5%BF%AB%E6%8D%B7%E9%94%AE/) +- [能让你开发效率翻倍的 VSCode 插件配置(上)](https://juejin.im/post/5a08d1d6f265da430f31950e) +- [https://segmentfault.com/a/1190000012811886](https://segmentfault.com/a/1190000012811886) -- [使用VSCode的一些技巧](https://mp.weixin.qq.com/s?src=11×tamp=1591581536&ver=2387&signature=i4xLZlLe1Gkl7OiBIhPO*VSeNB5lzFgTY-dgNW9E9ZbtIAv4bnJ1RdAAZdhvDw*cg-DmMcUa-V8NSUdV-tthmXZCq3ht4edCweq6v0QxKjnh8IuAxyyh5qymdRui*8iE&new=1) \ No newline at end of file +- [「Vscode」打造类 sublime 的高颜值编辑器](https://idoubi.cc/2019/07/08/vscode-sublime-theme/) + +- [Mac Vscode 快捷键](https://lsqy.tech/2020/03/14/20200314Mac-Vscode%E5%BF%AB%E6%8D%B7%E9%94%AE/) + +* [使用 VSCode 的一些技巧](https://mp.weixin.qq.com/s?src=11×tamp=1591581536&ver=2387&signature=i4xLZlLe1Gkl7OiBIhPO*VSeNB5lzFgTY-dgNW9E9ZbtIAv4bnJ1RdAAZdhvDw*cg-DmMcUa-V8NSUdV-tthmXZCq3ht4edCweq6v0QxKjnh8IuAxyyh5qymdRui*8iE&new=1) diff --git a/04-JavaScript基础/50-定时器.md b/04-JavaScript基础/50-定时器.md index e5bd2d8..2583f3a 100644 --- a/04-JavaScript基础/50-定时器.md +++ b/04-JavaScript基础/50-定时器.md @@ -22,7 +22,7 @@ ### 定义定时器 -**方式一:**匿名函数 +**方式一**:匿名函数 每间隔一秒,将 数字 加1: @@ -41,6 +41,7 @@ ```javascript setInterval(fn,1000); + function fn() { num ++; console.log(num); } diff --git a/10-Node.js和数据库/01-Node.js介绍.md b/10-Node.js和数据库/01-Node.js介绍.md index 043d6a4..755a938 100644 --- a/10-Node.js和数据库/01-Node.js介绍.md +++ b/10-Node.js和数据库/01-Node.js介绍.md @@ -245,3 +245,5 @@ Electron 框架就是基于 Node.js 的。也可以说:Electron 是 Node.js 扫一扫,你将发现另一个全新的世界,而这将是一场美丽的意外: ![](http://img.smyhvae.com/20200101.png) + +## \ No newline at end of file