怎样在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 相关文章推荐
用正则表达式 动态创建/增加css style script 兼容IE firefox
Mar 10 Javascript
extjs 学习笔记(一) 一些基础知识
Oct 13 Javascript
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
Dec 11 Javascript
jQuery对象数据缓存Cache原理及jQuery.data方法区别介绍
Apr 07 Javascript
TypeScript 学习笔记之基本类型
Jun 19 Javascript
javascript实现自动填写表单实例简析
Dec 02 Javascript
微信jssdk用法汇总
Jul 16 Javascript
AngularJS轻松实现双击排序的功能
Aug 30 Javascript
javascript 中设置window.location.href跳转无效问题解决办法
Feb 09 Javascript
解决Vue使用swiper动态加载数据,动态轮播数据显示白屏的问题
Sep 27 Javascript
Bootstrap4 gulp 配置详解
Jan 06 Javascript
解决layer图标icon不加载的问题
Sep 04 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
PHP的一个基础知识 表单提交
2011/07/04 PHP
php正则表达式获取内容所有链接
2015/07/24 PHP
PHP使用PHPexcel导入导出数据的方法
2015/11/14 PHP
我整理的PHP 7.0主要新特性
2016/01/07 PHP
php实现三级级联下拉框
2016/04/17 PHP
PHP实现链式操作的三种方法详解
2017/11/16 PHP
Yii2.0实现的批量更新及批量插入功能示例
2019/01/29 PHP
超级兔子让浮动层消失的前因后果
2007/03/09 Javascript
Javascript 设计模式(二) 闭包
2010/05/26 Javascript
JavaScript模块随意拖动示例代码
2014/05/27 Javascript
JavaScript知识点总结之如何提高性能
2016/01/15 Javascript
JavaScript驾驭网页-获取网页元素
2016/03/24 Javascript
js中window.open的参数及注意注意事项
2016/07/06 Javascript
Angularjs 实现一个幻灯片示例代码
2016/09/08 Javascript
JS中把函数作为另一函数的参数传递方法(总结)
2017/06/28 Javascript
使用sessionStorage解决vuex在页面刷新后数据被清除的问题
2018/04/13 Javascript
vue左侧菜单,树形图递归实现代码
2018/08/24 Javascript
vue项目环境变量配置的实现方法
2018/10/12 Javascript
JS实现图片切换特效
2019/12/23 Javascript
借助云开发实现小程序短信验证码的发送
2020/01/06 Javascript
vue 使用插槽分发内容操作示例【单个插槽、具名插槽、作用域插槽】
2020/03/06 Javascript
js实现简单选项卡制作
2020/08/05 Javascript
Python函数式编程指南(一):函数式编程概述
2015/06/24 Python
Python做简单的字符串匹配详解
2017/03/21 Python
Python操作MySQL数据库实例详解【安装、连接、增删改查等】
2020/01/17 Python
Python实现自动打开电脑应用的示例代码
2020/04/17 Python
Python datetime 如何处理时区信息
2020/09/02 Python
HTML5中Localstorage的使用教程
2015/07/09 HTML / CSS
2014年预备党员端正入党动机思想汇报
2014/09/13 职场文书
关于召开会议的通知
2015/04/15 职场文书
酒桌上的开场白
2015/06/01 职场文书
小学体育教学随笔
2015/08/14 职场文书
民事纠纷协议书
2016/03/23 职场文书
Python实现抖音热搜定时爬取功能
2022/03/16 Python
详解Flutter自定义应用程序内键盘的实现方法
2022/06/14 Java/Android
利用Python实现翻译HTML中的文本字符串
2022/06/21 Python