怎样在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 相关文章推荐
jquery.tmpl JQuery模板插件
Oct 10 Javascript
Jquery实现列表(隔行换色,全选,鼠标滑过当前行)效果实例
Jun 09 Javascript
script不刷新页面的联动前后代码
Sep 18 Javascript
JS实现类似51job上的地区选择效果示例
Nov 17 Javascript
jquery实现(textarea)placeholder自动换行
Dec 22 Javascript
ajax实现动态下拉框示例
Jan 10 Javascript
基于LayUI实现前端分页功能的方法
Jul 22 Javascript
Vue父子模版传值及组件传值的三种方法
Nov 27 Javascript
JS实现在文本指定位置插入内容的简单示例
Dec 22 Javascript
EXTJS7实现点击拖拉选择文本
Dec 17 Javascript
JavaScript实现点击切换验证码及校验
Jan 10 Javascript
使用vue判断当前环境是安卓还是IOS
Apr 12 Vue.js
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
用Flash图形化数据(二)
2006/10/09 PHP
PHP实现批量删除(封装)
2017/04/28 PHP
PHP使用星号替代用户名手机和邮箱的实现代码
2018/02/07 PHP
PHP标准库 (SPL)――Countable用法示例
2020/06/05 PHP
javascript 读取XML数据,在页面中展现、编辑、保存的实现
2009/10/27 Javascript
jquery DOM操作 基于命令改变页面
2010/05/06 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
使用apply方法实现javascript中的对象继承
2013/12/16 Javascript
jQuery的live()方法对hover事件的处理示例
2014/02/27 Javascript
jquery操作 iframe的方法
2014/12/03 Javascript
javascript折半查找详解
2015/01/26 Javascript
JQuery页面地址处理插件jqURL详解
2015/05/03 Javascript
js多功能分页组件layPage使用方法详解
2016/05/19 Javascript
jQuery插件easyUI实现通过JS显示Dialog的方法
2016/09/16 Javascript
Vue 短信验证码组件开发详解
2017/02/14 Javascript
微信小程序实现轮播图效果
2017/09/07 Javascript
JS设计模式之访问者模式定义与用法分析
2018/02/05 Javascript
JS实现将链接生成二维码并转为图片的方法
2018/03/17 Javascript
Javascript读写cookie的实例源码
2019/03/16 Javascript
微信小程序实现3D轮播图效果(非swiper组件)
2019/09/21 Javascript
JavaScript实现简单的弹窗效果
2020/05/19 Javascript
解决vue 退出动画无效的问题
2020/08/09 Javascript
vue单应用在ios系统中实现微信分享功能操作
2020/09/07 Javascript
利用js实现简易红绿灯
2020/10/15 Javascript
Python中使用Inotify监控文件实例
2015/02/14 Python
分享一个简单的python读写文件脚本
2017/11/25 Python
python3 判断列表是一个空列表的方法
2018/05/04 Python
Python实现快速傅里叶变换的方法(FFT)
2018/07/21 Python
解决HTML5手机端页面缩放的问题
2017/10/27 HTML / CSS
Linux内核的同步机制是什么?主要有哪几种内核锁
2016/07/11 面试题
学徒工职责
2014/03/06 职场文书
社区领导班子四风问题原因分析及整改措施
2014/09/28 职场文书
中秋节祝酒词
2015/08/12 职场文书
小学生教师节广播稿
2015/08/19 职场文书
分享:关于学习的励志名言赏析
2019/08/16 职场文书
图片批量处理 - 尺寸、格式、水印等
2022/03/07 杂记