全文共5630字,预计学习时长11分钟

图片来源:Ali Zolghadr/Unsplash

Visual Studio Code(也被称为VSCode,https://code.visualstudio.com/)是一款功能强大的轻量级跨平台桌面源代码编辑器。由于其内置开发工具支持TypeScript和Chrome开发者工具,这款编辑器让人越用越喜欢。

每个人都能使用和修改的无限扩展的开放源代码,谁不爱呢?希望这篇文章能帮你找到扩充开发工具箱的新工具。

虽然下列工具并不都是JavaScript语言专用,但它们都是JavaScript开发者会感兴趣的。以下是2019年JavaScript开发者的27个神奇的VSCode工具。

1. 项目代码段

第一个是由VSCode内置的用户代码段(https://code.visualstudio.com/docs/editor/userdefinedsnippets)衍生而来的项目代码段(https://marketplace.visualstudio.com/items?itemName=rebornix.project-snippets)。

这项功能能让开发人员创建自己的代码段,并在项目中重复使用。

但是“重复使用”到底是什么意思呢?

如果开发人员经常编写像下面这样的样板代码:

import { useReducer } from 'react'
const initialState = {//
}
const reducer = (state, action) => {switch (action.type) {default:return state}
}
const useSomeHook = () => {const [state, dispatch] = useReducer(reducer, initialState)return {...state,}
}
export default useSomeHook

开发人员可以直接将这段代码放到“用户代码段”中,通过键入自定义前缀来生成设置的代码段,而不用重新写入或是复制粘贴整个代码段。

你可以通过File > Preferences > User Snippets,点击New Global Snippets File来选择并创建一个新的开放代码段。

比如说,如果要新建一个TypeScript React项目,可以点击New Global Snippets File,输入文件名typescriptreact.json,进入新创建的json文件,用TypeScript语言来创建React应用。

又比如,如果要用上文中的案例代码来创建一个新的用户代码段,应该这样做:

{"const initialState = {}; const reducer = (state, action)": {"prefix": "rsr","body": ["const initialState = {","  //$1","}","","const reducer = (state, action) => {","  switch (action.type) {","    default:","      return state","  }","}"]}
}

然后,创建一个以.tsx结尾的TypeScript文件,输入前缀rsr之后就会跳出生成这个代码段的建议。

在弹出窗口上点击tab键就能生成这一代码段:

const initialState = {//
}const reducer = (state, action) => {switch (action.type) {default:return state}
}

这么做的优点在于:所有项目都可以使用这一技巧,这对于一些适用性比较广的程序段尤其有用。

有些项目会有不同的设置。因此,在需要区分特定的使用情况时,设置公开文件的代码段就会有困难。

比如说,当项目之间结构不同时:

{"import Link from components/common/Link": {"prefix": "gcl","body": "import Link from 'components/common/Link'"},"border test": {"prefix": "b1","body": "border: '1px solid red',"},"border test2": {"prefix": "b2","body": "border: '1px solid green',"},"border test3": {"prefix": "b3","body": "border: '1px solid magenta',"}
}

对于“指定文件/文件夹”结构的项目来说,可能这样就够了。但是,如果需要开发一个链接成分的路径为components/Link的项目呢?

请注意在三个边界测试中,边界值要用单引号框住:border: '1px solid red'。

这对于JavaScript来说是非常有效的。但是,如果使用样式化组件作为样式化方案,原来的语法规则就不再适用了,因为样式化组件应用的是标准CSS语法!

这就到了项目代码段大放光彩的时刻了。

项目代码段让程序员能够区分项目层次和工作区层次的代码段,这样就能避免代码段冲突或者污染其他项目,这一点非常实用!

2. 优化注释

如果喜欢在代码中添加注释,可能会出现因为代码过于密集而找不到注释的情况。

借助优化注释工具(https://marketplace.visualstudio.com/items?itemName=aaron-bond.better-comments)可以把注释变成显目的彩色。

这样就可以轻松地通过添加!或者?来提醒组员需要注意的地方了。

3. 括号配对着色

第一次见到括号配对着色(https://marketplace.visualstudio.com/items?itemName=CoenraadS.bracket-pair-colorizer)的截图时,笔者就决定要将其加入开发工具箱中。

对于酷爱编程的人来说,这个扩展无疑能让编程变得更加有趣。

4. Material Theme

Material Theme(https://marketplace.visualstudio.com/items?itemName=Equinusocio.vsc-material-theme)是一款能直接安装到VSCode的悠久主题,它能让代码变成下面这样:

这是目前为止最棒的主题了,赶快安装吧!

5. @typescript-eslint/parser

TypeScript用户可能已经开始由TSLint配置转向ESLint + TypeScript配置了,因为今年,TSLint背后团队宣布将弱化对其的支持。

因此现在越来越多的项目采用@typescript-eslint/parser及相关的软件包,以保证项目设置不会过时。

在Prettier网站上,依然可以用最新的设置体验ESLint的规则和兼容性。

6. Stylelint

对于所有项目来说,Stylelint(https://marketplace.visualstudio.com/items?itemName=shinnn.stylelint)都是必备的,原因有以下几个:

· 它能避免出错。

· 它能执行CSS的代码风格规范。

· 它能与Prettier配合使用。

· 它能支持CSS/ SCSS/Sass/Less。

· 它能支持社区创建的插件。

7. Markdownlint + docsify

有些人可能有这样的习惯:在开项目讨论会时,用Markdown(https://daringfireball.net/projects/markdown/)格式记笔记。

这样的笔记易于理解,而且有很多便利的Markdown文档工具,其中就包括markdownlint。

Markdownlint是一款VSCode扩展,它不但能帮助检查.md文件的书写规范,而且支持Prettier格式!

笔者在所有项目中都应用了docsify,因为它支持Markdown和其他强化。

8. TODO高亮

如果有把待办项记录在应用代码中的习惯,TODO高亮这样的扩展就会非常有用,因为它能够把整个项目中的TODO都设置为高亮。

9. Import Cost

第一次尝试的时候,你可能会觉得Import Cost非常有用。但是用了一会你可能就不再需要它了,因为它告诉你的你都已经知道了。尽管如此,还是建议你尝试一下,因为你可能会需要它。

10. Highlight Matching Tag

找不到标签的另一端时,Highlight Matching Tag就能派上用场了:

11. vscode-spotify

有些人会觉得切换到音乐软件切歌,然后回到VSCode界面继续工作有些麻烦。

Vscode-spotify就能解决这个麻烦,因为它能让程序员在VSCode里使用Spotify(Spotify是瑞典的在线流媒体音乐播放平台,民间译名“声田”或者“声破天”)!

有了这个扩展就可以在状态栏看到正在播放的歌曲,通过热键切换歌曲,点击按键控制Spotify,等等。

12. 用于VSCode的GraphQL

随着GraphQL逐步发展,几乎每个JavaScript社区都能看到它的身影。鉴于此,考虑安装用于VSCode的GraphQL也许是个不错的主意。

通过这个工具,就可以在处理GraphQL语法时使用语法高亮、linting以及自动完成等功能。

因为笔者经常使用Gatsby,所以日常编程中常常涉及到GraphQL语法。

13. 彩虹缩进

跟上文中使用括号配对着色的理由类似。如果很难找到对应的缩进,使用彩虹缩进就能让缩进更有可读性。

请看这个例子:

14. Color Highlight

这是一个到哪都会被问链接的扩展。简单来说,Color Highlight会这样给代码中的颜色标注高亮:

15. 拾色器

拾色器是一款图形用户界面的VSCode扩展,它帮助用户选择并生成颜色代码,比如说CSS颜色值。

16. REST Client

第一次尝试REST Client时,笔者并不认为这个工具会比著名的Postman软件更好用。

随着使用的深入,笔者逐渐意识到REST Client扩展给开发工具带来的巨大影响,尤其是在测试API时。

你可以新建一个文件,输入:https://google.com。

只需要高亮这一行,进入控制面板(快捷键:CTRL + SHIFT + P),点击Rest Client: Send Request就可以发起HTTP GET请求,很快响应详情就会出现在弹出的新标签页中。

这非常有用:

甚至可以略过参数或者请求body数据来发起POST请求,只需要添加下面这几行代码:

POST https://test.someapi.com/v1/account/user/login/Content-Type: application/json{ "email": "someemail@gmail.com", "password": 1 }

这样就可以发起一个以{ "email": "someemail@gmail.com", "password": 1 }为body参数的POST请求了。

而这只是这个扩展最基础的功能。

更多信息传送门:https://marketplace.visualstudio.com/items?itemName=humao.rest-client

17. Settings Sync

如果非常讨厌既要手写一份Markdown笔记记录用到的扩展工具,又要记录在印象笔记这样的笔记应用中,Settings Sync就能解决这个烦恼。

只需要一个gist/GitHub账户,在记录快捷键、代码段、扩展等设置时,同时按下SHIFT + ALT + U,就可以将个人设置上传到gist账户。下次登录或者设置另一台电脑时,运用快捷键SHIFT + ALT + D就可以下载设置了。

18. Todo Tree

Todo Tree能找到应用代码中的所有待办项,并整理到面板左侧的单一树架结构中。

19. Toggle Quotes

Toggle Quotes是个有趣而实用的扩展,它能够切换引号。在插入字符串、需要切换到反引号时,尤其是当Prettier总是美化代码时给字符串加上单引号的时候,Toggle Quotes就能派上用场。

20. Better Align

使用Better Align,不用预先选定就可以对齐所有代码。

只需把光标放在需要对齐的代码上,通过CTRL + SHIFT + P(或者是其他自定义的快捷键)打开控制面板,就可以调用Align命令。

21. 自动闭合标记

自动闭合标记是一个第一次使用VSCode时就能派上用场的工具。如果输入<div再加一个斜线号/,它会自动补完后面的>符号。

虽然这个工具并不是VSCode专有,但是它非常有用。

22. Sort Lines

有人会因为文本行没有按照字母顺序排列而不舒服,幸运的是,Sort lines这样的工具对强迫症患者非常友好。

如果你也有类似的强迫症,你也许会觉得这个工具有用。

23. VSCode谷歌翻译

可能很多人认为这个工具没什么用处。因为笔者在多语言环境中工作,所以VSCode谷歌翻译在项目中非常有用。

运用这个工具,可以在编辑界面内查单词。

24. Prettier

Prettier是一款自动优化JavaScript、TypeScript等代码格式的VSCode扩展。

25. Material Icon Theme

相比于其他图标主题,笔者更喜欢Material Icon Theme,因为这款主题让不同的文件类型更易于区分,特别是在应用了暗色主题的情况下。

26. IntelliSense for CSS Class Names in HTML

IntelliSense for CSS class names in HTML能够基于工作区内的定义将HTML中CSS class的名字补全。

27. Path Intellisense

Path Intellisense是一款能够自动补全文件名的VSCode扩展。

留言 点赞 关注

我们一起分享AI学习与发展的干货

欢迎关注全平台AI垂类自媒体 “读芯术”

vscode设置eslint检验无效_大整理!JavaScript开发者的27个神奇VSCode工具相关推荐

  1. vscode 切换开发者工具_大整理!JavaScript开发者的27个神奇VSCode工具

    全文共5630字,预计学习时长11分钟 图片来源:Ali Zolghadr/Unsplash Visual Studio Code(也被称为VSCode,https://code.visualstud ...

  2. mac软件全屏时候最顶上任务栏保留_一键整理 Mac 顶部菜单栏,这款免费工具 App 还你清爽...

    原标题:一键整理 Mac 顶部菜单栏,这款免费工具 App 还你清爽 Mac 有一个好处是,除了 Dock 栏,还有桌面顶部菜单栏.别小瞧这个顶部菜单栏,小小的图标往往能在必要时刻给予我们十足的便利. ...

  3. vscode你最后一个编辑器_这几个插件,让你的 vscode更牛逼

    关注精彩内容,要先蓝字这里哦~ 前言 2019-02-12-22-49-31 作为一名程序员,我们虽然经常使用的是IDE,但不能所有的文本或者文件都是用idea打开进行操作,这样太浪费资源. 基本上每 ...

  4. 2019年JavaScript开发者必备的10个vscode插件

    VSCode现在前端圈特别火爆,基本人手一件,那么选择一个好的插件能够帮我们提高开发效率,和开发体验.今天给大家推荐的这个10个插件希望对大家有所帮助. 之前我们还热衷使用Atom,webstorm, ...

  5. vscode设置网页的域名_微博图床不能用了?教你在VSCODE中如何使用腾讯图床

    VSCODE使用腾讯COS做图床教程 一.序言 最近微博图床的外链问题导致大家都在想办法找新的图床. 因为我一直用的是VSCODE来写文章,所以找了一下,发现VSCODE有朋友新开发了一个插件, 我自 ...

  6. VSCode设置ESLint语法检查

    转载 "eslint.validate": ["javascript","javascriptreact","vue-html&q ...

  7. python课程_大整理!程序员最爱的13个免费Python课程

    全文共3070字,预计学习时长6分钟

  8. nc65 单据非向导开发 源代码_最受Java开发者喜爱的5款开发工具

    在TIOBE 编程语言排行中,Java始终排在前三名,现今有700万到1000万的Java开发人员.许多应用程序的所有代码都是用Java编写的,这意味着集成开发环境(IDE)很重要,因为它是开发人员编 ...

  9. vscode 新版eslint自动修复_vscode自动修复eslint规范的插件及配置

    在开发大型项目中,经常都是需要多人合作的.相信大家一定都非常头疼于修改别人的代码的吧,而合理的使用eslint规范可以让我们在代码review时变得轻松,也可以让我们在修改小伙伴们的代码的时候会更加清 ...

最新文章

  1. 最大似然估计Maximum-likelihood (ML) Estimation
  2. 【线性代数本质】4:矩阵乘法本质
  3. 听着三只松鼠上市的钟声,罗永浩流下了悔恨的泪水
  4. R语言与回归分析几个假设的检验
  5. 修订模式怎么彻底关闭_是时候换掉家里的灯泡了——小米智能灯泡组网实现家庭影院模式...
  6. 高等代数期末考试题库及答案_数学类高等代数期末考试试题A卷(含答案)
  7. win10 2016 LTSB
  8. JSP九大内置对象总结
  9. Houdini使用Python给点连线
  10. pyhton根据城市名称获取省份名称
  11. 触宝输入法+android,触宝输入法国际版
  12. python机器学习案例-梯度提升模型搭建及评估(完整代码+实现效果)
  13. layuiAdmin自定义模块
  14. unity 动态修改粒子特效
  15. CSDN学生大本营“每日进步”文章
  16. 在uni-app的textarea中输入纯数字或者英文不换行的问题
  17. 侧边栏如何展开与收起
  18. 《linux命令行与shell脚本编程大全》读书笔记第一、二章
  19. 正基WiFi6模块AP6275S
  20. 短信 无联系人头像 控件修改

热门文章

  1. 百度开源的 71 个项目,看看你用过几个?
  2. 为什么Java进程使用的RAM比Heap Size大?
  3. Spring Boot 启动可以有多快?
  4. Spring Cloud Data Flow 中的 ETL
  5. 【辟谣】代码规范固然重要,但是不要再黑程序员了...
  6. umi不输出html文件,部署 - UmiJS 中文文档
  7. php删除两端,php删除字符串末尾子字符,删除开始字符,删除两端字符的示例代码...
  8. yolov5改进VariFocalNet
  9. mnn python 笔记
  10. 高达82 fps的实时文本检测,可微分二值化模块