add: VS Code 的配置

This commit is contained in:
qianguyihao 2020-05-23 17:44:13 +08:00
parent d44e76bd95
commit 07a4624bf4
4 changed files with 216 additions and 51 deletions

View File

@ -2,7 +2,7 @@
## 前言
> 本文的最新内容更新于**2019-11-08**大家完全不用担心这篇文章会过时因为随着 VS Code 的版本更新和插件更新本文也会随之更新
> 本文的最新内容更新于**2020-05-16**大家完全不用担心这篇文章会过时因为随着 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。
@ -10,7 +10,7 @@ VS Code 本来是前端人员专用,但由于它实在是太好用了,于
写下这篇文章是顺势而为
### VS Code 的介绍
## VS Code 的介绍
VS Code 的全称是 Visual Studio Code是一款开源的免费的跨平台的高性能的轻量级的代码编辑器它在性能语言支持开源社区方面都做的很不错
@ -176,7 +176,7 @@ Mac用户按住快捷键 `Cmd+Shift+P` Windows用户按住快捷键`Ctrl+Shif
如果们需要修改一些设置项可以通过命令面板来操作效率会更高这里列举一些
### 字体设置
### 设置字体大小
在命令面板输入字体可以进行字体的设置效果如下
@ -184,6 +184,7 @@ Mac用户按住快捷键 `Cmd+Shift+P` Windows用户按住快捷键`Ctrl+Shif
当然你也可以在菜单栏选择首选项-设置-常用设置在这个设置项里修改字体大小
### 快捷键设置
在命令面板输入快捷键就可以进入快捷键的设置
@ -206,7 +207,7 @@ Mac用户按住快捷键 `Cmd+Shift+P` Windows用户按住快捷键`Ctrl+Shif
- `code pathName/fileName`命令通过 VS Code 软件打开指定目录/指定文件
## VS Code 的常见置项
## VS Code 的常见置项
### 1VS Code 设置为中文语言
@ -255,11 +256,11 @@ VS Code 会在代码的右侧,默认显示缩略图。你可以在设置项里
```json
"workbench.colorCustomizations": {
"editor.lineHighlightBackground": "#00000090",
"editor.lineHighlightBorder": "#00000000"
"editor.lineHighlightBorder": "#ffffff30"
}
```
面两行代码的意思是修改光标所在行的背景色背景色设置为全黑透明度90%修改光标所在行的边框色
方代码第一行代码的意思是修改光标所在行的背景色背景色设置为全黑不透明度90%第二行代码的意思是修改光标所在行的边框色
### 7改完代码后立即自动保存
@ -303,7 +304,9 @@ VS Code 会根据你所打开的文件来决定该使用空格还是制表。也
### 10新建文件后的默认文件类型
当我们按下快捷键Cmd + N新建文件时VS Code 默认无法识别这个文件到底是什么类型的因此也就无法识别相应的语法高亮如果你想修改默认的文件类型可以在设置项里搜索`files.defaultLanguage`设置项如下
当我们按下快捷键Cmd + N新建文件时VS Code 默认无法识别这个文件到底是什么类型的因此也就无法识别相应的语法高亮
如果你想修改默认的文件类型可以在设置项里搜索`files.defaultLanguage`设置项如下
![](http://img.smyhvae.com/20190417_2221.png)
@ -317,9 +320,10 @@ VS Code 会根据你所打开的文件来决定该使用空格还是制表。也
我建议这个设置项保持默认的打钩就好不用修改删除文件前的弹窗提示也是为了安全考虑万一手贱不小心删了呢
## VS Code 设置-高级进阶
> 接下来我们来讲一些更高级的配置
### 1文件对比
### 12文件对比
VS Code 默认支持**对比两个文件的内容**选中两个文件然后右键选择将已选项进行比较即可效果如下
@ -329,13 +333,13 @@ VS Code自带的对比功能并不够强大我们可以安装插件`compareit
![](http://img.smyhvae.com/20190329_1757.png)
### 2查找某个函数在哪些地方被调用了
### 13查找某个函数在哪些地方被调用了
比如我已经在`a.js`文件里调用了 `foo()`函数那么如果我想知道`foo()`函数在其他文件中是否也被调用了该怎么做呢
做法如下 `a.js` 文件里选中`foo()`函数或者将光标放置在`foo()`函数上然后按住快捷键Shift + F12就能看到 `foo()`函数在哪些地方被调用了比较实用
### 3鼠标操作
### 14鼠标操作
- 在当前行的位置鼠标三击可以选中当前行
@ -343,19 +347,19 @@ VS Code自带的对比功能并不够强大我们可以安装插件`compareit
- 在某个**行号**的位置**上下移动鼠标可以选中多行**
### 4重构
### 15重构
重构分很多种我们来举几个例子
**1命名重构**
**命名重构**
当我们尝试去修改某个函数或者变量名我们可以把光标放在上面然后按下F2那么这个函数或者变量名出现的地方都会被修改
**2方法重构**
**方法重构**
选中某一段代码这个时候代码的左侧会出现一个灯泡图标点击这个图标就可以把这段代码提取为一个单独的函数
### 5在当前文件中搜索
### 16在当前文件中搜索
在上面的快捷键列表中我们已经知道如下快捷键
@ -373,7 +377,7 @@ VS Code自带的对比功能并不够强大我们可以安装插件`compareit
![](http://img.smyhvae.com/20191108_1655.png)
### 6全局搜索
### 17全局搜索
在上面的快捷键列表中我们已经知道如下快捷键
@ -383,7 +387,7 @@ VS Code自带的对比功能并不够强大我们可以安装插件`compareit
上图中你可以点击红框部分展开更多的配置项
### 7Git版本管理
### 18Git版本管理
VS Code 自带了 Git 版本管理如下图所示
@ -394,7 +398,7 @@ VS Code 自带了 Git 版本管理,如下图所示:
与此同时我建议安装插件`GitLens`它是 VS Code 中我最推荐的一个插件简直是Git神器码农必备
### 8将工作区放大/缩小
### 19将工作区放大/缩小
我们在上面的设置项里修改字体大小后仅仅只是修改了代码的字体大小
@ -404,7 +408,7 @@ VS Code 自带了 Git 版本管理,如下图所示:
如果你想恢复默认的工作区大小可以在命令面板输入`重置缩放`英文是`reset zoom`
### 9创建多层子文件夹
### 20创建多层子文件夹
我们可以在新建文件夹的时候如果直接输入`aa/bb/cc`比如
@ -415,7 +419,7 @@ VS Code 自带了 Git 版本管理,如下图所示:
![](http://img.smyhvae.com/20190418_2023.png)
### 10.vscode 文件夹的作用
### 21`.vscode` 文件夹的作用
如果你发现项目的根目录下有一个`.vscode`文件夹说明这个文件夹代表的是当前项目的配置
@ -425,19 +429,23 @@ VS Code 自带了 Git 版本管理,如下图所示:
- `sftp.json`ftp文件传输的配置
### 11自带终端
### 22自带终端
我们可以按下Ctrl + `」打开 VS Code 自带的终端。我认为内置终端并没有那么好用,我更建议你使用第三方的终端 **item2**。
### 12markdown语法支持
### 23markdown 语法支持
VS Code自带 markdown 语法高亮写完 md 文件之后你可以点击右上角的按钮进行预览如下图所示
VS Code自带 markdown 语法高亮也就是说如果你是用 markdown 格式写文章的话你完全可以用 VS Code 进行写作
写完 md 文件之后你可以点击右上角的按钮进行预览如下图所示
![](http://img.smyhvae.com/20190418_1907.png)
我一般是安装Markdown Preview Github Styling插件 GitHub 风格预览 Markdown 样式样式十分简洁美观
你也可以在控制面板输入`Markdown: 打开预览`直接全屏预览 markdown文件
### 13Emmet in VS Code
### 24Emmet in VS Code
`Emmet`可以极大的提高 html css 的编写效率它提供了一种非常简练的语法规则
@ -456,42 +464,57 @@ VS Code自带 markdown 语法高亮,写完 md 文件之后,你可以点击
VS Code 默认支持 Emmet更多 Emmet 语法规则请自行查阅
## VS Code 插件推荐
### 25修改字体使用Fira Code字体
VS Code 有一个很强大的功能就是支持插件扩展
这款字体很漂亮很适合用来写代码
![](http://img.smyhvae.com/20191108_1553_2.png)
![](http://img.smyhvae.com/20200516_1633.png)
上图中点击红框部分即可在输入框里查找你想要的插件名然后进行安装
安装步骤如下
我来列举几个常见的插件这些插件都很实用
1进入 <https://github.com/tonsky/FiraCode> 网站下载并安装「Fira Code」字体。
### GitLens
2打开 VS Code 设置搜索`font`修改相关配置为如下内容
我强烈建议你安装插件`GitLens`它是 VS Code 中我最推荐的一个插件简直是Git神器码农必备如果你不知道那真是out了
```json
"editor.fontFamily": "'Fira Code',Menlo, Monaco, 'Courier New', monospace", // 设置字体显示
"editor.fontLigatures": true,//控制是否启用字体连字true启用false不启用这里选择启用
```
GitLens Git 管理上有很多强大的功能比如
上方的第二行配置取决于个人习惯我是直接设置为` "editor.fontLigatures": null`因为我不太习惯连字
- 将光标放置在代码的当前行可以看到这样代码的提交者是谁以及提交时间这一点 GitLens 最便捷的功能
### 26代码格式化Prettier
- 查看某个 commit 的代码改动记录
我们可以使用 `Prettier`进行代码格式化会让代码的展示更加美观步骤如下
- 查看不同的分支
1安装插件 `Prettier`
- 可以将两个 commit 进行代码对比
2在项目的根路径下新建文件`.prettierrc`并在文件中添加如下内容
- 甚至可以将两个 branch 分支进行整体的代码对比这一点简直是 GitLens 最强大的功能当我们在不同分支review代码的时候就可以用到这一招
```json
{
"printWidth": 150,
"tabWidth": 4,
"semi": true,
"singleQuote": true,
"trailingComma":"es5",
"tslintIntegration": true,
"insertSpaceBeforeFunctionParenthesis": false
}
### Bracket Pair Colorizer 2突出显示成对的括号
```
`Bracket Pair Colorizer 2`插件以不同颜色显示成对的括号并用连线标注括号范围
上面的内容是我自己的配置你可以参考
另外还有个`Rainbow Brackets`插件也可以突出显示成对的括号
更多配置可以参考官方文档<https://prettier.io/docs/en/options.html>
### sftp文件传输
### 文件传输sftp
如果你需要将本地文件通过 ftp 的形式上传到局域网的服务器可以安装`sftp`这个插件很好用在公司会经常用到
步骤如下
1安装插件`sftp`
@ -500,7 +523,7 @@ GitLens 在 Git 管理上有很多强大的功能,比如:
- `host`服务器的IP地址
- `username`工作站自己的用户名
- `username`用户名
- `privateKeyPath`存放在本地的已配置好的用于登录工作站的密钥文件也可以是ppk文件
@ -544,16 +567,104 @@ GitLens 在 Git 管理上有很多强大的功能,比如:
我们还可以选择右键 -> Diff with Remote就可以将本地的代码和 ftp 服务器上的代码做对比
### Project Manager
工作中我们经常会来回切换多个项目每次都要找到对应项目的目录再打开比较麻烦Project Manager插件可以解决这样的烦恼它提供了专门的视图来展示你的项目我们可以把常用的项目保存在这里需要时一键切换十分方便
## VS Code 配置云同步
我们可以将配置云同步这样的话当我们换个电脑时即可将配置一键同步到本地就不需要重新安装插件了也不需要重新配置软件
我们还可以把配置分享其他用户也可以把其他用户的配置给自己用
**将自己本地的配置云同步到GitHub**
1安装插件 `settings-sync`
2安装完插件后在插件里使用 GitHub 账号登录
3登录后在 vscode 的界面中可以选择一个别人的 gist也可以忽略掉然后创建一个属于自己的 gist
4使用快捷键 Command + Shift + P在弹出的命令框中输入 sync并选择更新/上传配置这样就可以把最新的配置上传到 GitHub
**换另外一个电脑时从云端同步配置到本地**
1当我们换另外一台电脑时可以先在 VS Code 中安装 `settings-sync` 插件
2安装完插件后在插件里使用 GitHub 账号登录
3登录之后插件的界面上会自动出现之前的同步记录
![](http://img.smyhvae.com/20200521_1530.png)
上图中我们点击最新的那条记录就可将云端的最新配置同步到本地
![](http://img.smyhvae.com/20200521_1550.png)
如果你远程的配置没有成功同步到本地那可能是网络的问题此时可以使用快捷键 Command + Shift + P在弹出的命令框中输入 sync并选择下载配置多试几次
## VS Code 插件推荐
VS Code 有一个很强大的功能就是支持插件扩展
![](http://img.smyhvae.com/20191108_1553_2.png)
上图中点击红框部分即可在输入框里查找你想要的插件名然后进行安装
我来列举几个常见的插件这些插件都很实用
顺序越靠前越实用
### GitLens
我强烈建议你安装插件`GitLens`它是 VS Code 中我最推荐的一个插件简直是Git神器码农必备如果你不知道那真是out了
GitLens Git 管理上有很多强大的功能比如
- 将光标放置在代码的当前行可以看到这样代码的提交者是谁以及提交时间这一点 GitLens 最便捷的功能
- 查看某个 commit 的代码改动记录
- 查看不同的分支
- 可以将两个 commit 进行代码对比
- 甚至可以将两个 branch 分支进行整体的代码对比这一点简直是 GitLens 最强大的功能当我们在不同分支review代码的时候就可以用到这一招
### Live Server
在本地启动一个服务器代码写完后可以实现热更新实时地在网页中看到运行效果就不需要每次都得手动刷新页面了
使用方式安装插件后开始写代码代码写完后右键选择Open with Live Server
### Chinese (Simplified) Language Pack for Visual Studio Code
让软件显示为简体中文语言
### Bracket Pair Colorizer 2突出显示成对的括号
`Bracket Pair Colorizer 2`插件以不同颜色显示成对的括号并用连线标注括号范围
另外还有个`Rainbow Brackets`插件也可以突出显示成对的括号
### sftp文件传输
如果你需要将本地文件通过 ftp 的形式上传到局域网的服务器可以安装`sftp`这个插件很好用在公司会经常用到
详细配置已经在上面讲过
### open in browser
安装`open in browser`插件后 HTML 文件中右键选择 --> Open in Default Browser即可在浏览器中预览网页
### highlight-icemode选中相同的代码时让高亮显示更加明显
VSCode自带的高亮显示实在是不够显眼用插件支持一下吧
@ -568,6 +679,12 @@ VSCode自带的高亮显示实在是不够显眼。用插件支持一下吧
css 颜色管理
### Project Manager
工作中我们经常会来回切换多个项目每次都要找到对应项目的目录再打开比较麻烦Project Manager插件可以解决这样的烦恼它提供了专门的视图来展示你的项目我们可以把常用的项目保存在这里需要时一键切换十分方便
### TODO Highlight
写代码过程中突然发现一个Bug但是又不想停下来手中的活以免打断思路怎么办按照代码规范我们一般是在代码中加个TODO注释比如注意一定要写成大写`TODO`而不是小写的`todo`
@ -660,6 +777,11 @@ css颜色高亮显示。
- [One Dark Pro](https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme)
- 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)

View File

@ -30,6 +30,10 @@ flex布局常用的三行代码
-webkit-line-clamp:2;
```
参考链接<https://blog.csdn.net/NN_nan/article/details/55045562>
### 问题描述文本内容里自带了换行但是在前端没有展示出来
解决办法增加如下属性即可

View File

@ -11,18 +11,55 @@ Web前端有三层
### 发展历史
JavaScript诞生于**1995**布兰登 艾奇Brendan Eich19611995年在网景公司发明的JavaScript
JavaScript诞生于**1995**布兰登 艾奇Brendan Eich19611995年在网景公司开发除了JavaScript语言
JavaScript是由**网景**公司发明初命名为LiveScript199512月SUN公司合作因市场宣传需要改名为 JavaScript
JavaScript是由**网景**公司Netscape发明初命名为LiveScript199512月SUN公司合作因市场宣传需要改名为 JavaScript
后来 Sun 公司 被Oracle收购JavaScript版权归Oracle所有
> 备注由于当时Java这个语言特别火所以为了傍大牌就改名为JavaScript如同北大北大青鸟的关系北大青鸟就是傍北大大牌
同时期还有其他的网页语言比如VBScriptJScript等等但是后来都被JavaScript打败了所以现在的浏览器中只运行一种脚本语言就是JavaScript
> 同时期还有其他的网页语言比如VBScriptJScript等等但是后来都被JavaScript打败了所以现在的浏览器中只运行一种脚本语言就是JavaScript
1996微软为了抢占市场推出了`JScript`在IE3.0中使用
1996年11月网景公司将JS提交给ECMA(国际标准化组织)成为国际标准用于对抗微软
JavaScript是世界上用的最多的**脚本语言**
### JS的版本发布记录
由ECMA的第39号技术专家委员会Technical Committee 39简称TC39负责制订ECMAScript标准成员包括MicrosoftMozillaGoogle等公司
ECMAScript 就是JS的语言标准
JS的版本发布记录
- 1997ECMA 发布 ECMA-262 标准推出浏览器标准语言 ECMAScript 1.0
- 2009发布 ECMAScript 5.0
- 2011发布 ECMAScript5.1成为ISO国际标准从而推动所有浏览器都支持
- 2015发布 ECMAScript 6简称 ES6更名为ECMAScript 2015
注意**前者是按版本号区分后者是按年份区分**
- 2016发布 ECMAScript 7 ECMAScript 2016
- 2017发布ECMAScript 8 ECMAScript 2017
- 2018发布 ECMAScript 9 ECMAScript 2018
- 2019发布 ECMAScript 10 ECMAScript 2019
- 2020发布 ECMAScript 11 ECMAScript 2020
- ......
### JavaScript的发展蒸蒸日上
2003年之前JavaScript被认为牛皮鲜用来制作页面上的广告弹窗漂浮的广告什么东西让人烦什么东西就是JavaScript开发的所以很多浏览器就推出了屏蔽广告功能
@ -40,6 +77,8 @@ JavaScript是世界上用的最多的**脚本语言**。
虽然目前WebAppWeb应用在功能和性能上的体验远不如Native App原生应用但是在原生App中内嵌一部分H5页面已经是一种趋势
## JavaScript介绍
### JavaScript入门易学性

View File

@ -152,7 +152,7 @@
我们平时使用的对象不一定是自己创建的可能是别人提供的这个时候in 运算符可以派上用场
## 遍历对象for ... in
## 遍历对象for in
语法
@ -168,8 +168,8 @@ for (var 变量 in 对象名) {
```javascript
for (var key in obj) {
console.log(key); // 这里的 key 是:对象属性的键
console.log(obj[key]); // 这里的 obj[key] 是:对象属性的值
console.log(key); // 这里的 key 是:对象属性的键(也就是属性名)
console.log(obj[key]); // 这里的 obj[key] 是:对象属性的值(也就是属性值)
}
```