eslint 学习笔记
本文同步自我的博客 https://joeray61.com
安装
局部:
npm install eslint --save-dev
全局:
npm install eslint -g
初始化
eslint --init
Note: 此处及以后都假设全局安装
eslint
或者在npm script
中使用eslint
使用eslint进行校验
eslint file.js
配置
parser
指定eslint
使用的 parser,默认是Espree
,除此之外常用的还有:
Esprima
Babel-ESLint
.eslintrc
示例:
{"parser": "esprima"
}
parserOptions
指定传给 parser 的信息
.eslintrc
示例:
{"parserOptions": {"ecmaVersion": 6,"sourceType": "module","ecmaFeatures": {"jsx": true}}
}
env
指定程序运行的环境,这关系到有哪些预先定义好的全局变量
browser - 浏览器中的全局变量
node - nodejs中的全局变量
es6 - 启用 es6 中除了模块之外的其他特性(这会自动将
parserOptions.ecmaVersion
设置为6
)worker - web worker中的全局变量
mocha - mocha 测试框架中的全局变量
...
Note: 可以同时定义多个
env
.eslintrc
示例:
{"env": {"browser": true,"node": true}
}
globals
全局变量申明,true
表示允许改写,false
表示不允许改写
.eslintrc
示例:
{"globals": {"var1": true,"var2": false}
}
plugins
声明使用了哪些插件,插件名可以默认忽略eslint-plugin-
前缀,这些插件可以用于rules
、env
和extends
等配置中
.eslintrc
示例:
{"plugins": ["example" // or "eslint-plugin-example"],"env": {"example/custom": true},"extends": ["eslint:recommended","plugin:example/recommended"],"rules": {"example/rule1": "error"}
}
extends
继承一套基础配置
.eslintrc
示例:
{"extends": "eslint:recommended"
}
rules
具体校验规则的配置
.eslintrc
示例:
{"rules": {"no-set-state": "off"}
}
可以参考 http://eslint.org/docs/rules/ 了解更多
rule
settings
共享的配置,配置中的信息将会被传递给所有要执行的规则(rule)
.eslintrc
示例:
{"settings": {"sharedData": "Hello"}
}
注释配置
注释配置是指在js
文件中通过注释来单独指定一些校验信息
env
/* eslint-env node, mocha */
global
/* global var1:false, var2:false */
rule
/* eslint eqeqeq: 0, curly: 2 */
"off" or 0: 关闭这条规则
"warn" or 1: 开启规则,如果校验有问题则抛出警告
"error" or 2: 开启规则,如果校验有问题则抛出错误
关闭/开启所有规则校验
/* eslint-disable */alert('foo');/* eslint-enable */
关闭/开启校验部分具体的规则校验
/* eslint-disable no-alert, no-console */alert('foo');
console.log('bar');/* eslint-enable no-alert, no-console */
关闭当前行的所有规则校验
alert('foo'); // eslint-disable-line
关闭下一行的所有规则校验
// eslint-disable-next-line
alert('foo');
关闭当前行的具体规则校验
alert('foo'); // eslint-disable-line no-alert
关闭下一行的具体规则校验
// eslint-disable-next-line no-alert
alert('foo');
eslint 学习笔记相关推荐
- Vue学习(常用实例、脚手架搭建)-学习笔记
文章目录 Vue学习(常用实例.脚手架搭建)-学习笔记 实例1 法1 法2 实例2 脚手架搭建 vue-cli2.0 vue-cli4.0 Vue学习(常用实例.脚手架搭建)-学习笔记 附加:阿里巴巴 ...
- amazeui学习笔记二(进阶开发4)--JavaScript规范Rules
amazeui学习笔记二(进阶开发4)--JavaScript规范Rules 一.总结 1.注释规范总原则: As short as possible(如无必要,勿增注释):尽量提高代码本身的清晰性. ...
- Vue2学习笔记1 - win10下安装vue开发环境
操作系统为Win10_x64 1.安装NodeJs Vue的安装依赖NodeJs,所以需要先安装NodeJs,去NodeJs官网(http://nodejs.cn/download/)下载对应系统的n ...
- Admin.NET管理系统(vue3等前后端分离)学习笔记--持续更新
我的学习笔记 - 9iAdmin.NET 欢迎学习交流 (一)前端笔记 1.1 关于.env的设置 1.2 关于路由模式问题 1.3 关于 vue.config.ts 1.4 关于 打包(pnpm r ...
- 【学习笔记】React+React全家桶学习笔记
文章目录 1 为什么要使用React 2 React的定义 3 React的三大特性 4 React入门 4.1 hello_react 4.2 虚拟DOM的创建 4.3 JSX 4.4 模块与组件, ...
- Vue学习笔记(三)Vue2三种slot插槽的概念与运用 | ES6 对象的解构赋值 | 基于Vue2使用axios发送请求实现GitHub案例 | 浏览器跨域问题与解决
文章目录 一.参考资料 二.运行环境 三.Vue2插槽 3.1 默认插槽 3.2 具名插槽 3.3 作用域插槽 ES6解构赋值概念 & 作用域插槽的解构赋值 3.4 动态插槽名 四.GitHu ...
- 「Vue 学习笔记 1」Vue 项目快速搭建,初始项目各个文件夹作用介绍和启动代码执行流程分析
「Vue 学习笔记 1」Vue 项目快速搭建,初始项目各个文件夹作用介绍和启动代码执行流程分析 前言 一.我的开发环境 二.使用 Vue CLI (Vue 脚手架)快速搭建项目 三.初始项目的目录结构 ...
- 前端面试+学习笔记(HTML+CSS+JavaScript+ES6+Vue+NodeJs)
前端面试+学习笔记(HTML+CSS+JavaScript+ES6+Vue+NodeJs) 一. HTML 1. 盒子模型 是什么:每个元素被表示为一个矩形的盒子,有四个部分组成:内容(content ...
- Vue3项目搭建学习笔记
Vue3项目搭建学习笔记 参考王红元老师vue课程 创建项目 vue create vue3-ts-cms 项目搭建规范 集成editorconfig配置 VSCode需要安装一个插件:EditorC ...
最新文章
- SFB 项目经验-13-为某上市企业仅安装Skype for Business 2016(图解)
- batch-size 深度学习笔记
- 列出所有K个元素的子集-----2013年1月26日
- python调用远程chromedriver.exe、selenium抓包方法
- bufferreader java_Java - BufferedReader对比FileReader到底哪里进行了优化
- 交互式多模型_体系化教学资源上新——小学数学交互式教学工具
- python数值运算代码_Python数值
- epson r1900 清零软件_EPSON 1430 R1900 1500 R330 R1800 R2000 R230 打印机清零软件
- android计算器括号,计算器(一)——加减和括号
- rocketMq配置外网IP
- 苹果手机上linux编程,iOS真机调试 - iOS学习笔记_Linux编程_Linux公社-Linux系统门户网站...
- 期末复习【操作系统】
- v-for 循环生成多个表单元素 给动态生成的表单元素绑定值并且添加校验规则
- 脱机运行scp linux,解决CentOS使用不了scp命令
- 大多数企业数字化转型的真正目的其实只是为了能多裁点人
- IO模型(阻塞,非阻塞,多路复用)
- svn 认证失败请看解决办法
- 在火狐上安装chrome 的crx扩展
- 怎么用手机和电脑同时预览PS设计稿
- 【人工智能哲学01/2】人工智能前世今生