webstorm中配置Eslint的两种方式及差异比较详解


Posted in Javascript onOctober 19, 2018

写在前面

这两种方式的配置基本相同,都是配一下node地址,Eslint执行文件的地址,Eslint的配置文件(就是.eslintrc)等,而且网上很方便就可以搜索到,就不多说了。

之所以要比较一下两者的差异,就是因为对于没有配置过的同学来说,看了诸如“怎么在webstorm下配置Eslint”的问题下面的回答,既有说用方式1,又有说方式2的,然后这两种方式配置项还差不多(都是在webstorm的一个setting页面里面设置三四个项目,然后勾上enable复选框),就容易混淆。

再加上笔者自身在使用的时候,也是在一番摸索,比较差异之后,才选定了适合自己的那一种方式。特留下此文,以示记录。

方式一:webstorm自带Eslint

两种方式配置都很简单,就都简单说了。

用webstorm自带Eslint这种方式的话,只需要打开setting,找到eslint设置页面,填完几个项目,勾选enable复选框就行了。

webstorm中配置Eslint的两种方式及差异比较详解

方式二:使用插件Eslint

这种方式呢,分两步,第一步:需要先到plugin插件库,找到eslint插件,点击install。如下图:

webstorm中配置Eslint的两种方式及差异比较详解

第二步:插件安装完成后,去setting页面,搜索eslint,这时你会发现,除了方式一那个eslint设置页面外,还多了一个设置页面,在setting对话框最下面的菜单。里面的设置项和方式一差不多。

差异比较

差异1:使用方式。

自带的使用方式是在左侧项目目录列表上,选中某个你想eslint自动修复的文件夹或文件,右键,会出现fix eslint problems菜单。如下图。

webstorm中配置Eslint的两种方式及差异比较详解

当然你也可以在右侧,代码编辑区域,选中某个要自动修复eslint监测出来有bug的文件,右键,点击fix eslint problems菜单。如下图。

webstorm中配置Eslint的两种方式及差异比较详解

这是第一种,webstorm自带eslint方式的使用。

下面说第二种,用了第三方插件eslint的使用。

第二种配置好以后,会在webstorm的code菜单多一个子菜单,叫做:Eslint Fix。下面两张图,一个是用第二种方式配置前,一个是用第二种方式配置后。可以发现code菜单多出来的子菜单。

webstorm中配置Eslint的两种方式及差异比较详解

webstorm中配置Eslint的两种方式及差异比较详解

这两种配置方案在使用方案上的差别,看起来相似,实则不同,第二种方式在code菜单下选eslint Fix 子菜单会把你整个webstorm当前加载的所有项目,检测出来不符合你在setting里面设置的那个.eslintrc的文件都自动修复了。而webstorm自带的,则可以自由选择想修复哪个目录。因此,第一种方式在修复哪些文件这件事上的定制化对我们比较友好。

当然了,第二种配置方案的自动修复方式的最大问题在于,一旦你点了code菜单下eslint Fix 子菜单,所有webstorm下项目自动修复,会带来很多问题,因为很多时候你只是想给webstorm下的某个项目设置eslint功能。

差异2:对vue文件是否检测上

方式一直接支持检测出vue文件中的不合eslint规则的代码区域,并且用红色波浪线标识,而第二种方式在不多加配置的情况下,不支持检测出vue文件的代码不合.eslintrc规则的代码区域。

下图是第一种方式,在一个空行,打了几个空格,就显示了红色波浪线,说不符合规则,然后右击文件,选择fix eslint problems子菜单,就能把红色波浪线去除。

webstorm中配置Eslint的两种方式及差异比较详解

最后

目前没找到可以只对webstorm单个项目起作用的配置项。这两种方式,都会对webstorm加载出来的所有项目适用。这用起来就有点不爽了,因为毕竟不是所有项目都需要eslint的。

如果有知道的前端er可以交流一下。

我的GitHub

补充:sublime自动修复eslint报错

 1.安装全局安装eslint

npm install eslint -g

全局安装eslint插件

npm install eslint-plugin-html -g
npm install babel-eslint -g

在需要用到eslint的项目生成eslint文件

eslint --init

2、在sublime编辑器上安装插件ESLint-Formatter

菜单栏找到 Tools > Build System > New Build System,新建一个 eslint-fix.sublime-build 文件,然后里面内容如下:

{
  "shell_cmd": "eslint --fix $file" 
}

或者

{
  "cmd": "D:\\dev\\nvm\\npm\\eslint.cmd --fix $file" 
}

3、用快捷键 ctrl+b 运行刚刚创建的 build 文件

webstorm中配置Eslint的两种方式及差异比较详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
xml文档转换工具,附图表例子(hta)
Nov 17 Javascript
拖动table标题实现改变td的大小(css+js代码)
Apr 16 Javascript
Jquery api 速查表分享
Jan 12 Javascript
jquery+css实现的红色线条横向二级菜单效果
Aug 22 Javascript
AngularJS动态生成div的ID源码解析
Aug 29 Javascript
最细致的vue.js基础语法 值得收藏!
Nov 03 Javascript
JQuery和PHP结合实现动态进度条上传显示
Nov 23 Javascript
从零开始学习Node.js系列教程之基于connect和express框架的多页面实现数学运算示例
Apr 13 Javascript
vue.js项目nginx部署教程
Apr 05 Javascript
实例详解vue中的$root和$parent
Apr 29 Javascript
js类的继承定义与用法分析
Jun 21 Javascript
如何在现代JavaScript中编写异步任务
Jan 31 Javascript
clipboard在vue中的使用的方法示例
Oct 19 #Javascript
详解在vue-cli项目下简单使用mockjs模拟数据
Oct 19 #Javascript
ES6 系列之 Generator 的自动执行的方法示例
Oct 19 #Javascript
js中自定义react数据验证组件实例详解
Oct 19 #Javascript
值得收藏的八个常用的js正则表达式
Oct 19 #Javascript
深入理解移动前端开发之viewport
Oct 19 #Javascript
vue移动端html5页面根据屏幕适配的四种解决方法
Oct 19 #Javascript
You might like
php 之 没有mysql支持时的替代方案
2006/10/09 PHP
PHP 利用AJAX获取网页并输出的实现代码(Zjmainstay)
2012/08/31 PHP
PHP 类相关函数的使用详解
2013/05/10 PHP
关于php操作mysql执行数据库查询的一些常用操作汇总
2013/06/24 PHP
php递归获取目录内文件(包含子目录)封装类分享
2013/12/25 PHP
ThinkPHP模版引擎之变量输出详解
2014/12/05 PHP
PHPStorm2020.1永久激活及下载更新至2020(推荐)
2020/09/25 PHP
phpstudy2020搭建站点的实现示例
2020/10/30 PHP
如何让您的中波更粗更长 - 中波框形天线制作
2021/03/10 无线电
jquery 图片预加载 自动等比例缩放插件
2008/12/25 Javascript
AJAX的跨域与JSONP(为文章自动添加短址的功能)
2010/01/17 Javascript
Ajax执行顺序流程及回调问题分析
2012/12/10 Javascript
Ajax异步提交表单数据的说明及方法实例
2013/06/22 Javascript
Javascript拓展String方法小结
2013/07/08 Javascript
webpack中引用jquery的简单实现
2016/06/08 Javascript
AngularJS基础 ng-src 指令简单示例
2016/08/03 Javascript
Vue.js动态组件解析
2016/09/09 Javascript
Vue el-autocomplete远程搜索下拉框并实现自动填充功能(推荐)
2019/10/25 Javascript
python实现将文本转换成语音的方法
2015/05/28 Python
浅谈Python的文件类型
2016/05/30 Python
浅谈pytorch和Numpy的区别以及相互转换方法
2018/07/26 Python
python做反被爬保护的方法
2019/07/01 Python
从训练好的tensorflow模型中打印训练变量实例
2020/01/20 Python
Python opencv相机标定实现原理及步骤详解
2020/04/09 Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
2020/07/14 Python
Python+Selenium实现自动化的环境搭建的步骤(图文)
2020/09/01 Python
外国人聘用意向书
2014/04/01 职场文书
中职生自荐信范文
2014/06/15 职场文书
机电一体化应届生求职信
2014/08/09 职场文书
党校学习心得体会范文
2014/09/09 职场文书
公安机关纪律作风整顿剖析
2014/10/10 职场文书
2015年园林绿化工作总结
2015/05/23 职场文书
筑梦中国心得体会
2016/01/18 职场文书
详解使用 CSS prefers-* 规范提升网站的可访问性与健壮性
2021/05/25 HTML / CSS
Python爬虫入门案例之回车桌面壁纸网美女图片采集
2021/10/16 Python
基于Python编写简易版的天天跑酷游戏的示例代码
2022/03/23 Python