一重归、配置方式
- 注釋形式:使用 JavaScript 注釋將配置信息直接嵌入到文件中
- 文件形式
.eslintrc.js
-
.eslintrc.yaml
或者.eslintrc.yml
.eslintrc.json
-
package.json
文件中創(chuàng)建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
}
}
}
注意:配置文件如果在主目錄下胰挑,那么會先使用與文件就近的配置文件笔诵,找不到其他的配置文件,最后才使用主目錄下的配置文件勋又。
主要配置信息有:
- 環(huán)境(Environments):腳本設(shè)計運行的環(huán)境涯穷。每個環(huán)境都帶有一組預(yù)定義的全局變量。
- 全局變量(Globals) :腳本在執(zhí)行期間訪問的其他全局變量柱恤。
- 規(guī)則(Rules):啟用了哪些規(guī)則以及錯誤級別数初。
二、解析器
module.exports = {
parser: 'babel-eslint', //解析器
parserOptions: {
sourceType: 'module'
} //解析器選項
}
默認(rèn)解析器:Espree
三梗顺、環(huán)境
環(huán)境有瀏覽器 bower泡孩,Node 環(huán)境 node 等等
module.exports = {
env: {
browser: true
}
}
在官網(wǎng)上查找所有環(huán)境
四、全局變量
在 JavaScript 文件中使用注釋來指定全局變量寺谤,請使用以下格式:
/* global var1, var2 */
這定義了兩個全局變量仑鸥,var1
和 var2
吮播。如果你想有選擇地指定這些全局變量不應(yīng)該被寫入(只讀),那么你可以設(shè)置每個 false
標(biāo)志:
/* global var1:false, var2:false */
在配置文件中配置全局變量眼俊,請使用 globals
鍵并指示要使用的全局變量意狠。將每個全局變量名稱設(shè)置為等于 true
(允許覆蓋變量)或 false
(禁止覆蓋)。例如:
module.exports = {
globals: {
"var1": true,
"var2": false
}
}
注意:啟用 no-global-assign
規(guī)則禁止修改代碼中的只讀全局變量疮胖。
五环戈、插件
ESLint 支持使用第三方插件。在使用插件之前澎灸,您必須使用 npm 來安裝它院塞。
要在配置文件中配置插件,使用 plugins
包含插件名稱性昭,兩種寫法
module.exports = {
plugins: [
"plugin1",
"eslint-plugin-plugin2"
]
}
注意:由于 Node 的 require 功能迫悠,全局安裝的 ESLint 實例只能使用全局安裝的 ESLint 插件,本地安裝的版本只能使用本地安裝的插件巩梢。不支持混合本地和全局插件创泄。
六、規(guī)則
要更改規(guī)則設(shè)置括蝠,您必須將規(guī)則 ID 設(shè)置為以下值之一:
-
off
或者0
: 關(guān)閉該規(guī)則 -
warn
或者1
: 將規(guī)則打開為警告(不影響退出代碼) -
error
或者2
: 將規(guī)則打開為錯誤(觸發(fā)時退出代碼為1
)
module.exports = {
rules: {
"eqeqeq": "off",
"curly": "error",
"quotes": ["error", "double"]
}
}