JavaScript
Node.js
ESLint

v4.2.0 | 次 v4.4.0

ESLint 4.3.0 がリリースされました。
小さな機能追加とバグ修正が行われています。

質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。

🏢 日本語 Issue 管理リポジトリ
👫 日本語サポート チャット
🏢 本家リポジトリ
👫 本家サポート チャット

🚀 本体への機能追加

今回はありません。

🔧 オプションが追加されたルール

#7234: no-underscore-dangle enforceInMethodNames

クラス・オブジェクトのメソッド名について、アンダーバーで始まる/終わる名前を禁止するオプションが追加されました。

/* eslint no-underscore-dangle: [error, {enforceInMethodNames: true}] */

//✔ GOOD
class A {
    hello() {}
}
let b = {
    hello() {}
}

//✘ BAD
class C {
    _hello() {}
}
let d = {
    _hello() {}
}

#8796: prefer-destructuring VariableDeclarator / AssignmentExpression

変数宣言の場合と代入式の場合で設定を分けるためのオプションが追加されました。

/* eslint prefer-destructuring: [error, {
    AssignmentExpression: {array: false, object: false},
    VariableDeclarator: {array: true, object: true}
}] */

//✔ GOOD
let {a, b} = obj
a = obj.a
b = obj.b

//✘ BAD
let c = obj.c
let d = obj.d

#8932: no-restricted-globals message

禁止するグローバル変数毎に別々のエラーメッセージを表示できるようになりました。

/* eslint no-restricted-globals: [error,
    {name: event, message: "Use local parameter instead."},
    {name: name, message: "Use 'window.name' instead."},
] */

//✘ BAD
function onClick() {
    event.preventDefault() // Use local parameter instead.
}

✒️ eslint --fix をサポートしたルール

今回はありません。