博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
eslint 学习笔记
阅读量:6324 次
发布时间:2019-06-22

本文共 2128 字,大约阅读时间需要 7 分钟。

本文同步自我的博客

安装

局部:

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-前缀,这些插件可以用于rulesenvextends等配置中

.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"    }}

可以参考 了解更多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-linealert('foo');

关闭当前行的具体规则校验

alert('foo'); // eslint-disable-line no-alert

关闭下一行的具体规则校验

// eslint-disable-next-line no-alertalert('foo');

转载地址:http://kqvaa.baihongyu.com/

你可能感兴趣的文章
操作系统课程设计:用多线程同步方法解决读者阅览问题
查看>>
杂文 | 一些无用但有趣事情(持续更新中...)
查看>>
一条sql关联删除多张表数据
查看>>
适配iOS 9系统
查看>>
delphi 获取webbrowser的cookies给Idhttp用
查看>>
css3之 谜灯卡片_css3呼吸灯效果(原创)
查看>>
增长量计算n+1原则_行测资料分析技巧:一招解决增长量
查看>>
插桩valgrind_狡猾的恶意代码:浅谈反插桩技术
查看>>
chart放入panel_vs2010中怎么在后台用代码新建一个Chart图表控件,然后加载到页面的一个Panel中?...
查看>>
server sql 判断是否是当天_SQL Server判断对象是否存在-will.miao
查看>>
git具体作用_git的作用与运用
查看>>
python property源码_【Python】Flask 源码为什么使用property有些代码不用装饰器方式, 有些又用了?...
查看>>
et200sp模块接线手册_西门子PLC NPN与PNP接线说明
查看>>
6-4 使用函数统计指定数字的个数_高手不可不学的Excel引用函数(上)
查看>>
平面向量内积坐标公式推导_从零开始一起学习SLAM | 为什么要用齐次坐标?
查看>>
supervisor 守护多个进程_dotnet core centos7 yum 守护进程supervisor
查看>>
5 zabbix 添加host_Zabbix监控系统中邮件告警配置方法
查看>>
vue2.0中组建里面套用组件_区域光照、光伏组件角度、安装设计是如何影响你的光伏电站发电效率的?...
查看>>
人之间的尊重是相互的_什么是尊重?
查看>>
tomcat启动出现闪退_服务器Tomcat你会安装了吗?
查看>>