1. 配置方式
注释形式:使用 JavaScript 注释将配置信息直接嵌入到文件中
文件形式
.eslintrc.js.eslintrc.yaml或者.eslintrc.yml.eslintrc.jsonpackage.json文件中创建eslintConfig属性
.eslintrc.js
module.exports = {root: true,parser: 'babel-eslint',parserOptions: {sourceType: 'module'},env: {browser: true,},extends: 'standard',plugins: ['html'],'rules': {// allow paren-less arrow functions'arrow-parens': 0,'semi': 0,// allow async-await'generator-star-spacing': 0,// allow debugger during development'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0}};
.eslintrc.json 文件
{"parserOptions": {...},"env": {...},"globals": {...}"rules": {...}}
.eslintrc.yml 文件
---parserOptions:...env:...globals:...rules:...
package.json 文件中
{"name": "mypackage","version": "0.0.1","eslintConfig": {"plugins": ["example"],"env": {"example/custom": true}}}
注意:配置文件如果在主目录下,那么会先使用与文件就近的配置文件,找不到其他的配置文件,最后才使用主目录下的配置文件。
主要配置信息有:
环境(Environments):脚本设计运行的环境。每个环境都带有一组预定义的全局变量。
全局变量(Globals) :脚本在执行期间访问的其他全局变量。
规则(Rules):启用了哪些规则以及错误级别。
2. 解析器 parser
module.exports = {parser: 'babel-eslint', //解析器parserOptions: {sourceType: 'module'} //解析器选项}
3. 环境 env
环境有浏览器 bower,Node 环境 node 等等
module.exports = {env: {browser: true}}
在官网上查找所有环境
4. 全局变量 global
在 JavaScript 文件中使用注释来指定全局变量,请使用以下格式:
/* global var1, var2 */
这定义了两个全局变量,var1 和 var2。如果你想有选择地指定这些全局变量不应该被写入(只读),那么你可以设置每个 false 标志:
/* global var1:false, var2:false */
在配置文件中配置全局变量,请使用 globals 键并指示要使用的全局变量。将每个全局变量名称设置为等于 true (允许覆盖变量)或 false (禁止覆盖)。例如:
module.exports = {globals: {"var1": true,"var2": false}}
注意:启用 no-global-assign 规则禁止修改代码中的只读全局变量。
5. 插件 plugins
ESLint 支持使用第三方插件。在使用插件之前,您必须使用 npm 来安装它。
要在配置文件中配置插件,使用 plugins 包含插件名称,两种写法
module.exports = {plugins: ["plugin1","eslint-plugin-plugin2"]}
注意:由于 Node 的 require 功能,全局安装的 ESLint 实例只能使用全局安装的 ESLint 插件,本地安装的版本只能使用本地安装的插件。不支持混合本地和全局插件。
6. 规则 rules
要更改规则设置,您必须将规则 ID 设置为以下值之一:
off或者0: 关闭该规则warn或者1: 将规则打开为警告(不影响退出代码)error或者2: 将规则打开为错误(触发时退出代码为1)
module.exports = {rules: {"eqeqeq": "off","curly": "error","quotes": ["error", "double"]}}
