怎样在vue项目下添加ESLint的方法


Posted in Javascript onMay 16, 2019

简易搭建

ESLint官网网址

ESLint中文官网

如果你是想在自己的项目里搭建ESLint,就可以按照官网的指示,

以全局安装举例,

npm install -g eslint

然后初始化

eslint --init

它会问你一些问题,你可以按照你的喜好进行配置,我选的是popular下面的standard,生成的文件是js格式,那么就会创建出eslintrc.js文件:

module.exports = {
"extends": "standard"
};

然后就可以简单的lint某个文件了:

$ eslint yourfile.js

在vue的项目里新添加ESLint

有的时候,早期的时候,我们建立vue项目的时候,可能图简便,并没有初始化ESLint、单元测试等等模块,那么就需要后添加进去。

如果是现在新建一个项目,通过vue-cli的问答就可以轻松初始化ESLint的配置。

这里说一下怎样在老项目里新添加ESLint。

首先,我先用vue-cli创建了一个新项目,在初始化的时候,选择安装eslint,

选择standard规则,然后就生成了eslintrc.js,把生成的这个文件拷贝到要加ESlint的老项目里。

// https://eslint.org/docs/user-guide/configuring
module.exports = {
 //默认情况下,ESLint 会在所有父级目录里寻找配置文件,一直到根目录。如果你想要你所有项目都遵循一个特定的约定时,这将会很有用,但有时候会导致意想不到的结果。为了将 ESLint 限制到一个特定的项目,在你项目根目录下的 package.json 文件或者 .eslintrc.* 文件里的 eslintConfig 字段下设置 "root": true。ESLint 一旦发现配置文件中有 "root": true,它就会停止在父级目录中寻找。
 root: true,
 parser: 'babel-eslint',
 parserOptions: {
  sourceType: 'module'
 },
 env: {
  browser: true,
 },
 // https://github.com/standard/standard/blob/master/docs/RULES-en.md
 extends: 'standard',
 // required to lint *.vue files
 plugins: [
  'html'
 ],
 // add your custom rules here
 'rules': {
  // allow paren-less arrow functions 要求箭头函数的参数使用圆括号
  'arrow-parens': 0,
  // allow async-await 强制 generator 函数中 * 号周围使用一致的空格
  'generator-star-spacing': 0,
  // allow debugger during development
  'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0
 }
}

然后找到package.json,把ESLint相关的依赖加进去(也可以一个一个进行安装,或者有更好的办法。。)

怎样在vue项目下添加ESLint的方法

"babel-eslint": "^7.1.1",  "eslint": "^3.19.0",

  "eslint-friendly-formatter": "^3.0.0",
  "eslint-loader": "^1.7.1",
  "eslint-plugin-html": "^3.0.0",
  "eslint-config-standard": "^10.2.1",
  "eslint-plugin-promise": "^3.4.0",
  "eslint-plugin-standard": "^3.0.1",
  "eslint-plugin-import": "^2.7.0",
  "eslint-plugin-node": "^5.2.0",

然后在webpack.base.conf.js的rules里添加

{
    test: /\.(js|vue)$/,
    loader: 'eslint-loader',
    enforce: 'pre',
    include: [resolve('src'), resolve('test')],
    options: {
     formatter: require('eslint-friendly-formatter')
    }
   },

npm install一下,应该就可以了。

这里的编辑器推荐用vscode,可以非常智能的显示出哪里出错,方便修改。

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

Javascript 相关文章推荐
javascript RadioButtonList获取选中值
Apr 09 Javascript
在表单提交前进行验证的几种方式整理
Jul 31 Javascript
判断客户浏览器是否支持cookie的示例代码
Dec 23 Javascript
深入浅析JavaScript中prototype和proto的关系
Nov 15 Javascript
前端jquery部分很精彩
May 03 Javascript
seajs学习教程之基础篇
Oct 20 Javascript
微信小程序 特效菜单抽屉效果实例代码
Jan 11 Javascript
JavaScript实现简单的星星评分效果
May 18 Javascript
JavaScript中运算符规则和隐式类型转换示例详解
Sep 06 Javascript
详解Angular结合zTree异步加载节点数据
Jan 20 Javascript
完美解决axios跨域请求出错的问题
Feb 05 Javascript
layui 实现table翻页滚动条位置保持不变的例子
Sep 05 Javascript
eslint 的三大通用规则详解
May 16 #Javascript
webpack项目使用eslint建立代码规范实现
May 16 #Javascript
Vue项目中使用jquery的简单方法
May 16 #jQuery
Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网
May 16 #Javascript
详解vue2.0模拟后台json数据
May 16 #Javascript
详解Vue-Router源码分析路由实现原理
May 15 #Javascript
微信小程序select下拉框实现效果
May 15 #Javascript
You might like
MySQL数据库转移,access,sql server 转 MySQL 的图文教程
2007/09/02 PHP
php+js实现裁剪任意形状图片
2018/10/31 PHP
JS字符串累加Array不一定比字符串累加快(根据电脑配置)
2012/05/14 Javascript
基于jquery实现的可编辑下拉框实现代码
2014/08/02 Javascript
快速使用Bootstrap搭建传送带
2016/05/06 Javascript
Bootstrap中表单控件状态(验证状态)
2016/08/04 Javascript
js利用appendChild对标签进行排序的实现方法
2016/10/16 Javascript
jquery实现下拉框多选方法介绍
2017/01/03 Javascript
JS中type="button"和type="submit"的区别
2017/07/04 Javascript
详解Vue单元测试Karma+Mocha学习笔记
2018/01/31 Javascript
js中int和string数据类型互相转化实例
2019/01/16 Javascript
jquery.tagsinput.js实现记录checkbox勾选的顺序
2019/09/21 jQuery
Vue在chrome44偶现点击子元素事件无法冒泡的解决方法
2019/12/15 Javascript
vue开发chrome插件,实现获取界面数据和保存到数据库功能
2020/12/01 Vue.js
[01:29]2014DOTA2展望TI 剑指西雅图DK战队专访
2014/06/30 DOTA
python在windows下创建隐藏窗口子进程的方法
2015/06/04 Python
听歌识曲--用python实现一个音乐检索器的功能
2016/11/15 Python
Python及PyCharm下载与安装教程
2017/11/18 Python
Python字典推导式将cookie字符串转化为字典解析
2019/08/10 Python
Python facenet进行人脸识别测试过程解析
2019/08/16 Python
从pandas一个单元格的字符串中提取字符串方式
2019/12/17 Python
tensorflow 分类损失函数使用小记
2020/02/18 Python
Python编程快速上手——选择性拷贝操作案例分析
2020/02/28 Python
python 如何设置守护进程
2020/10/29 Python
利用css3-animation实现逐帧动画效果
2016/03/10 HTML / CSS
如何让IE9以下版本(ie6/7/8)认识html5元素
2013/04/01 HTML / CSS
利用HTML5绘制点线面组成的3D图形的示例
2015/05/12 HTML / CSS
一份比较全的PHP面试题
2016/07/29 面试题
C++如何引用一个已经定义过的全局变量
2014/08/25 面试题
工程师岗位职责
2013/11/08 职场文书
如何客观的进行自我评价
2013/12/17 职场文书
房地产财务管理制度
2014/02/02 职场文书
社区两委对照检查材料
2014/08/23 职场文书
2015年后备干部工作总结
2015/05/15 职场文书
返乡农民工证明
2015/06/24 职场文书
《假如》教学反思
2016/02/17 职场文书