vuecli结合eslint静态检查
vuecli结合eslint静态检查
搭建vue项目开发可能选择vue-cli项目脚手架快速创建vue项目。(https://github.com/vuejs/vue-cli)
安装vue-cli
npm install -g vue-cli
这种方式安装比较慢,可以用国内淘宝镜像安装,cnpm,安装cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org
继续安装
cnpm install -g vue-cli
vue-cli脚手架自带webpack打包工具,创建一个基于webpack模板的新项目
vue init webpack my-project
这里需要进行一些配置,默认回车即可
This will install Vue 2.x version of the template.
For Vue 1.x use: vue init webpack#1.0 my-project
? Project name my-project
? Project description A Vue.js project
? Author runoob <test@runoob.com>
? Vue build standalone
? Use ESLint to lint your code? Yes
? Pick an ESLint preset Standard
? Setup unit tests with Karma + Mocha? Yes
? Setup e2e tests with Nightwatch? Yes
vue-cli · Generated "my-project".
To get started:
cd my-project
npm install
npm run dev
Documentation can be found at https://vuejs-templates.github.io/webpack
配置esLint
eslint配置方式主要有两种:
- 注释配置:使用js注释来直接嵌入ESlint配置信息到一个文件里
- 配置文件:使用一个js,JSON或者YAML文件来给整个目录和它的子目录指定配置信息。这些配置可以写成一个文件名.eslintrc.*的文件或者package.json文件里的eslintConfig项里
这两种方式ESlint都会自动寻找然后读取,也可以直接在命令行内指定一个配置文件。
一般需要我们去配置项包括:
- 环境:你的脚本会在哪种环境下运行。每个环境带来了一组特定的预定义的全局变量。
- 全局变量:脚本运行期间会访问额外的全局变量。
- 规则:使用那些规则,并且规则的等级是多少。
vue-cli脚手架安装完成后,主要有几个地方配置了eslint。
1,项目创建后项目中就会出现.eslintignore 和.eslintrc.js两个文件####
.eslintignore类似Git的.gitignore用来配置不需要Eslint检查的文件
.eslintrc.js主要用来配置具体规则
.eslintignore文件
添加不启动静态检查的文件
build/*.js // 忽略build文件夹下所有的脚本文件
config/*.js
.eslintrc.js文件
// https://eslint.org/docs/user-guide/configuring
module.exports = {
root: true,
parser: 'babel-eslint', // 解析器为babel-eslint,可在package.json文件中配置
parserOptions: {
sourceType: 'module'
},
env: { //环境配置为浏览器
browser: true,
},
// https://github.com/standard/standard/blob/master/docs/RULES-en.md
extends: 'standard', //文件配置继承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-star-spacing': 0,
// allow debugger during development
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0
}
}
说明: 在rules中每个配置项后面的第一个值为eslint规则的错误等级
- "off" 或 0 (关闭这条规则)
- "warn" 或 1 (违反规则会警告,不影响项目运行)
- "error" 或 2 (违反规则会报错,终止项目运行)
2 在package.json文件中配置文件
"script" : {
"lint": "eslint --ext .js, .vue src"
}
"devDenpendencies" : {
"babel-eslint": "^7.1.1",
// 更多eslint文件
...
}
3 在webpack配置文件中
webpack.base.conf.js
module: {
rules: [
{
test: /\.(js|vue)$/,
loader: 'eslint-loader',
enforce: 'pre',
include: [resolve('src'), resolve('test')],
options: {
formatter: require('eslint-friendly-formatter')
}
}
]
}
有时候代码里有些特殊情况需要我们在某一行或者某几行关闭ESLint检测,可以使用注释:
1,注释关闭所有规则
/* eslint-disable */
alert('foo');
/* eslint-enable */
2,关闭某一行的所有规则
alert('foo'); // eslint-disable-line
// eslint-disable-next-line
alert('foo');
3,在某一行关闭指定的规则
alert('foo'); // eslint-disable-line no-alert
// eslint-disable-next-line no-alert
alert('foo');
常用规则:
规则的细节请到ESLint官方网站查看 http://eslint.org/docs/rules/
vuecli结合eslint静态检查的更多相关文章
- vue-cli 中eslint代码检查之过滤指定文件
在需要过滤的文件头部末尾分别添加:/* eslint-disable */,/* eslint-disable no-new */
- React Native工程中TSLint静态检查工具的探索之路
建立的代码规范没人遵守,项目中遍地风格迥异的代码,你会不会抓狂? 通过测试用例的程序还会出现Bug,而原因仅仅是自己犯下的低级错误,你会不会抓狂? 某种代码写法存在问题导致崩溃时,只能全工程检查代码, ...
- 四种java代码静态检查工具
[转载]常用 Java 静态代码分析工具的分析与比较 转载自 开源中国社区 http://www.oschina.net/question/129540_23043 1月16日厦门 OSC ...
- Android(Java)利用findbugs进行代码静态检查
主要介绍利用java静态代码检查工具findbugs进行代码检查,包括其作用.安装.使用.高级功能(远程review和bug同步). 虽然Android提供了Test Project工程以及instr ...
- maven配置checkstyle插件对代码规范进行静态检查
checkstyle配置的官方网站:http://checkstyle.sourceforge.net/config.html (1)新建maven项目,配置checkstyle插件 pom.xml ...
- Shell学习---Shell脚本的静态检查工具shellcheck
Shell脚本的静态检查工具shellcheck ubuntu下 apt install shellcheck ,即可安装shellcheck.写完shell脚本,记得用它检查一下,能给你点建议的.要 ...
- QtCreator 可以通过 Clang-Tidy 和 CLazy 对你的代码进行静态检查
QtCreator 可以通过 Clang-Tidy 和 CLazy 对你的代码进行静态检查 打开你的工程,点击Analyze -> Clang-Tidy and CLazy 选择你想分析的 cp ...
- webstorm关闭烦人的eslint语法检查
使用了eslint语法检查之后发现JS代码里面处处是红线,通过右键菜单中的fix eslint problems选项又会发现页面代码的格式被eslint换行得不分青红皂白,索性关闭exlint语法检查 ...
- Kotlin Android项目静态检查工具的使用
Kotlin Android项目静态检查工具的使用 Kotlin Android项目可用的静态检查工具: Android官方的Lint, 第三方的ktlint和detekt. 静态检查工具 静态检查工 ...
随机推荐
- Hive之数据类型
Hive之数据类型 (本文是基于多篇文章根据个人理解进行的整合,参考的文章见末尾的整理) 数据类型 Hive支持两种数据类型,一类叫原子数据类型,一类叫复杂数据类型.原子数据类型包括数值型.布尔型 ...
- HTML5——前端预处理技术(Less、Sass、CoffeeScript)
一.Less 1.1.概要 Less是一种动态样式语言,Less 是一门 CSS 预处理语言,它扩展了 CSS 语言,增加了变量.Mixin.函数等特性,使 CSS 更易维护和扩展. Less 将 C ...
- Python 学习笔记(九)Python元组和字典(一)
Python 元组 元组的定义 元组(tuple)是一种Python对象类型,元组也是一种序列 Python中的元组与列表类似,不同之处元组的元素不能修改 元组使用小括号,列表使用方括号 元组的创建 ...
- window7及以上 创建软链接 mklink
软链接是一种文件共享方式. 命令:mklink /d "C:\d" "C:\e" 有哪些坑: 1.此命名必须以管理员方式在cmd运行 2.文件必须不存在..通过 ...
- Jboot使用appassembler-maven-plugin插件生成启动脚本
appassembler-maven-plugin介绍: 使用appassembler-maven-plugin插件可自动生成跨平台的启动脚本,可省去手工写脚本的麻烦,而且还可以生成jsw的后台运行程 ...
- linux 学习第九天
一.磁盘 (FHS:Filesystem Hierarchy Standard(文件系统层次化标准)的缩写) 1.常用目录 /var 主要存放经常变化的文件,如日志 /usr/local 用户自行 ...
- MySQL5.7主从同步--点位方式及GTID方式
MySQL5.6加入了GTID的新特性,其全称是Global Transaction Identifier,可简化MySQL的主从切换以及Failover.GTID用于在binlog中唯一标识一个事务 ...
- 支付宝PC端的支付(PHP)
现在的一个项目支付宝PC支付还是用的以前网关:https://mapi.alipay.com/gateway.do (是支付宝 2012年7月13日的3.3版本) 所以现在要做下支付宝PC支付的升级 ...
- thinkphp5 toArray()报错
//DB操作返回是数组.模型直接操作返回是对象 //对象类型转换数组 //打开 database.php 增加或修改参数 'resultset_type' => '\think\Collecti ...
- 让pandas的输出结果中显示全部数据
import pandas as pd pd.set_option('display.max_columns', 1000) pd.set_option('display.width', 1000) ...