VSCode配置eslint

在Vue.js项目中,使用的是eslint检查。javascript

而在我写完代码后,cnpm run dev运行命令。。。而后悲剧了,一大堆报错!╮(╯▽╰)╭html

安装插件:Vetur:这是vscode上一个vue.js代码提示,语法高亮等功能的流行插件。不过由于它代码格式化使用的是prettier,因此使用vscode右键自带的“格式化文件 Alt+shift+F”,会存在一些问题:vue

好比强制双引号(double quotes)、行尾自动加上分号(semicolon)等。java

重点是:这些在eslint中报错!!!无语O__O "…python

 

因此在用户设置setting.json里面:能够这样设置react

注意:这样设置后,是vscode右键格式化显示效果;不过还有点小问题,函数名后面的圆括号与函数名不会格式化后添加空格(而这致使在eslint中语法报错,╮(╯▽╰)╭)npm

 

解决方法安装ESLint插件,一样是用户设置setting.json:json

 1 //配置eslint
 2     "eslint.autoFixOnSave": true,
 3     "files.autoSave":"off",
 4     "eslint.validate": [
 5        "javascript",
 6        "javascriptreact",
 7        "html",
 8        { "language": "vue", "autoFix": true }
 9      ],
10      "eslint.options": {
11         "plugins": ["html"]
12      },
13      //为了符合eslint的两个空格间隔原则
14      "editor.tabSize": 2

这样每次保存文件(ctrl+s)时,eslint插件会自动对当前文件进行eslint语法修正!vim

 

其实有时候也不得不说是一种无奈,eslint制定了规则,由于使用它,因此算是半强迫状态接收它的某些规则(即便某些规则刚开始让人有点不适应)数组

由原先C++等语言的在行末尾加分号,使用python时tab=4空格缩进,到如今这eslint的强制单引号和行尾不加分号等规则(整的跟ruby愈来愈像,╮(╯▽╰)╭)【这里说的是eslint的默认规则,固然你要去强行修改固然能够改变规则。可是大多数人使用不修改的风格,而若是你去使用修改后的风格,沟通协做又是一个问题!】

业界也是对这些东西争论不休,无奈╮(╯▽╰)╭。成天哪么语言最好,加分号仍是不加分号(这里可看知乎连接),vim最强编辑器等等!

明明是可选的规则,而某些工具强制性般使用一种规则。也不知是好是坏,不过本人也只有“入乡随俗”,紧跟“大潮流”,不断变化吧╮(╯▽╰)╭

 

js中不加分号主要在圆括号方括号正则开头的斜杠加号减号后三种比较少见前面两种主要体如今IIFE当即执行的函数表达式,数组)5种状况下容易出问题:

 

这是经保存(ctrl+s)后,eslint格式化的js代码,以下图所示:

这是vscode鼠标右键“格式化文件”显示的代码,以下图所示:

 

本文中用到的插件主要有如下几种:

ESLint插件:

prettier插件:

Vetur插件:

 更多VSCode插件即配置可参见个人另外一篇博客:VSCode插件及用户设置

相关文章
相关标签/搜索