配置eslint规范项目代码风格


Posted in Javascript onMarch 11, 2019

为什么要使用eslint

你在接手一个项目的维护迭代任务,阅读代码的时候是否会因为项目中充斥着各种风格的代码而感到头疼?没错,eslint就是为了解决这类问题

eslint能做什么?

1.代码风格错误提示

配置好eslint后,如果代码风格与配置描述的不符,eslint会提示代码中存在的风格问题;一般提示的情形有:
1.编辑器内,大多数编辑器配置好后能读取eslint配置文件并在文件中进行相应提示
2.eslint-loader配合webpack-dev-server能在页面中弹出相应错误内容
3.eslint通过命令号对代码进行风格检查

2.修复相应风格问题

eslint --fix 命令能修复一部分代码风格问题;能修复的范围见https://cn.eslint.org/docs/rules/中带工具图标的部分

常见问题

如何在局部禁用eslint

/* eslint-disable no-alert, no-console */

alert('foo');
console.log('bar');

/* eslint-enable no-alert, no-console */

以下是详细配置

{
 root: true,// 直接在根目录读取配置文件,能提高eslint性能
 "env": {
  "node": true,// 允许使用nodejs相关的变量,下同
  "es6": true,
  "browser": true,
  "commonjs": true
 },
 "extends": "standard", // 继承eslint-config-standard中的配置,可以在rules中覆盖
 "parser": "babel-eslint", // 为eslint制定parser,默认的Esprima只允许已纳入es标准的内容
 "plugins": "vue",// 使用eslint-plugin-vue,使eslint能对vue语法进行处理,相应rules见https://eslint.vuejs.org/rules/
 "rules": {
  "no-alert": 2,
  "indent": ["error", 4, {
   "SwitchCase": 1,
   "VariableDeclarator": 1,
   "outerIIFEBody": 1,
   "MemberExpression": 1,
   "FunctionDeclaration": { "parameters": 1, "body": 1 },
   "FunctionExpression": { "parameters": 1, "body": 1 },
   "CallExpression": { "arguments": 1 },
   "ArrayExpression": 1,
   "ObjectExpression": 1,
   "ImportDeclaration": 1,
   "flatTernaryExpressions": false,
   "ignoreComments": false
  }]
 }
}

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

Javascript 相关文章推荐
jquery 实现的全选和反选
Apr 15 Javascript
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(下:动画篇)
Mar 24 Javascript
window.open以post方式将内容提交到新窗口
Dec 26 Javascript
JS如何将UTC格式时间转本地格式
Sep 04 Javascript
jquery实现非叠加式的搜索框提示效果
Jan 07 Javascript
JS原型、原型链深入理解
Feb 27 Javascript
纯JS代码实现一键分享功能
Apr 20 Javascript
浅析Bootstrip的select控件绑定数据的问题
May 10 Javascript
深入理解(function(){... })();
Aug 16 Javascript
js实现城市级联菜单的2种方法
Jun 23 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
Aug 14 jQuery
JS实现数据动态渲染的竖向步骤条
Jun 24 Javascript
vue基础之事件简写、事件对象、冒泡、默认行为、键盘事件实例分析
Mar 11 #Javascript
vue基础之事件v-onclick="函数"用法示例
Mar 11 #Javascript
每天学点Vue源码之vm.$mount挂载函数
Mar 11 #Javascript
JavaScript中常用的简洁高级技巧总结
Mar 10 #Javascript
angular 实现下拉列表组件的示例代码
Mar 09 #Javascript
Node.js动手撸一个静态资源服务器的方法
Mar 09 #Javascript
深入理解使用Vue实现Context-Menu的思考与总结
Mar 09 #Javascript
You might like
PHP 如何获取二维数组中某个key的集合
2014/06/03 PHP
Laravel日志用法详解
2016/10/09 PHP
php PDO判断连接是否可用的实现方法
2017/04/03 PHP
PHP7新特性
2021/03/09 PHP
使用jQuery.Validate进行客户端验证(初级篇) 不使用微软验证控件的理由
2010/06/28 Javascript
JavaScript词法作用域与调用对象深入理解
2012/11/29 Javascript
JavaScript实现网页上的浮动广告的简单方法
2013/06/14 Javascript
Node.js 的异步 IO 性能探讨
2014/10/08 Javascript
SeaJS 与 RequireJS 的差异对比
2014/12/08 Javascript
jquery实现表单验证简单实例演示
2015/11/23 Javascript
JavaScript 实现 Tab 点击切换实例代码
2017/03/25 Javascript
JS图片延迟加载插件LazyImgv1.0用法分析【附demo源码下载】
2017/09/04 Javascript
微信小程序实现获取小程序码和二维码java接口开发
2019/03/29 Javascript
layui form表单提交之后重新加载数据表格的方法
2019/09/11 Javascript
jQuery实现小火箭返回顶部特效
2020/02/03 jQuery
vue+render+jsx实现可编辑动态多级表头table的实例代码
2020/04/01 Javascript
vue3为什么要用proxy替代defineProperty
2020/10/19 Javascript
[01:50]WODOTA制作 DOTA2中文宣传片《HERO》
2013/04/28 DOTA
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
2016/10/12 Python
浅析python协程相关概念
2018/01/20 Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
2018/03/30 Python
python中的二维列表实例详解
2018/06/19 Python
python递归法实现简易连连看小游戏
2020/03/25 Python
解决Tensorflow 使用时cpu编译不支持警告的问题
2020/02/03 Python
PYQT5 vscode联合操作qtdesigner的方法
2020/03/24 Python
Python + selenium + crontab实现每日定时自动打卡功能
2020/03/31 Python
英国打印机墨水和碳粉商店:Printerinks
2017/06/30 全球购物
美国网上眼镜供应商:LEOTONY(眼镜、RX太阳镜和太阳镜)
2017/10/31 全球购物
澳大利亚快时尚鞋类市场:Billini
2018/05/20 全球购物
Blancsom美国/加拿大:服装和生活用品供应商
2018/07/27 全球购物
Lululemon英国官网:加拿大瑜伽服装品牌
2019/01/14 全球购物
国外软件测试工程师面试题
2016/12/09 面试题
会计专业毕业生自我评价
2013/09/25 职场文书
普通院校学生的自荐信
2013/11/27 职场文书
音乐课《小猫钓鱼》教学反思
2016/02/18 职场文书
六年级作文之家庭作文
2019/12/12 职场文书