ESLint (二)配置文件

一重归、配置方式

  • 注釋形式:使用 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 */

這定義了兩個全局變量仑鸥,var1var2吮播。如果你想有選擇地指定這些全局變量不應(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"]
  }
}

參考

ESLint (一)簡介與安裝
ESLint(三)常用規(guī)則
配置ESLint

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末鞠抑,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子忌警,更是在濱河造成了極大的恐慌搁拙,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,843評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件法绵,死亡現(xiàn)場離奇詭異箕速,居然都是意外死亡,警方通過查閱死者的電腦和手機朋譬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評論 3 392
  • 文/潘曉璐 我一進店門盐茎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人徙赢,你說我怎么就攤上這事字柠。” “怎么了狡赐?”我有些...
    開封第一講書人閱讀 163,187評論 0 353
  • 文/不壞的土叔 我叫張陵窑业,是天一觀的道長。 經(jīng)常有香客問我枕屉,道長常柄,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,264評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮西潘,結(jié)果婚禮上铜异,老公的妹妹穿的比我還像新娘。我一直安慰自己秸架,他們只是感情好揍庄,可當(dāng)我...
    茶點故事閱讀 67,289評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著东抹,像睡著了一般蚂子。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上缭黔,一...
    開封第一講書人閱讀 51,231評論 1 299
  • 那天食茎,我揣著相機與錄音,去河邊找鬼馏谨。 笑死别渔,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的惧互。 我是一名探鬼主播哎媚,決...
    沈念sama閱讀 40,116評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼喊儡!你這毒婦竟也來了拨与?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,945評論 0 275
  • 序言:老撾萬榮一對情侶失蹤艾猜,失蹤者是張志新(化名)和其女友劉穎买喧,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體匆赃,經(jīng)...
    沈念sama閱讀 45,367評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡淤毛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,581評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了算柳。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片低淡。...
    茶點故事閱讀 39,754評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖埠居,靈堂內(nèi)的尸體忽然破棺而出查牌,到底是詐尸還是另有隱情事期,我是刑警寧澤滥壕,帶...
    沈念sama閱讀 35,458評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站兽泣,受9級特大地震影響绎橘,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,068評論 3 327
  • 文/蒙蒙 一称鳞、第九天 我趴在偏房一處隱蔽的房頂上張望涮较。 院中可真熱鬧,春花似錦冈止、人聲如沸狂票。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,692評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽闺属。三九已至,卻和暖如春周霉,著一層夾襖步出監(jiān)牢的瞬間掂器,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,842評論 1 269
  • 我被黑心中介騙來泰國打工俱箱, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留国瓮,地道東北人。 一個月前我還...
    沈念sama閱讀 47,797評論 2 369
  • 正文 我出身青樓狞谱,卻偏偏與公主長得像乃摹,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子跟衅,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,654評論 2 354

推薦閱讀更多精彩內(nèi)容

  • ESLint 配置 ESlint 被設(shè)計為完全可配置的峡懈,這意味著你可以關(guān)閉每一個規(guī)則而只運行基本語法驗證,或混合和...
    靜默虛空閱讀 41,292評論 3 14
  • EsLint入門學(xué)習(xí)整理 這兩天因為公司要求与斤,就對ESLint進行了初步的了解肪康,網(wǎng)上的內(nèi)容基本上都差不多,但是內(nèi)容...
    點柈閱讀 26,023評論 3 42
  • ESLint最初是由Nicholas C. Zakas 于2013年6月創(chuàng)建的開源項目撩穿。它的目標(biāo)是提供一個插件化的...
    gavinDu閱讀 1,799評論 1 1
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理磷支,服務(wù)發(fā)現(xiàn),斷路器食寡,智...
    卡卡羅2017閱讀 134,652評論 18 139
  • ESLint 是一個插件化的 javascript 代碼檢測工具雾狈,它可以用于檢查常見的 JavaScript 代碼...
    lion1ou閱讀 10,785評論 0 7