ESLint v3.2.0 released: https://t.co/QbVIzV6MIH
— ESLint (@geteslint) 2016年7月29日
ESLint 3.2.0 がリリースされました。
小さな機能追加といくつかのバグ修正が行われています。
質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。
新しいルール
#6079: no-tabs
JSCS 互換ルールです。
ソースコード中でタブを利用することを禁止します。
インデント、コメント、文字列など例外なく禁止するアグレッシブなやつです。
オプションが追加されたルール
#1801: indent
プロパティアクセスに関するインデントを矯正するようになりました。
/*eslint indent: [error, 2, {MemberExpression: 1}]*/
// ✔ GOOD
foo
.bar()
.baz()
// ✘ BAD
foo
.bar()
.baz()
3.2.0 ではデフォルトの挙動が変更されましたが、それは Semver 違反なので 3.2.1 でオプションの裏に隠すよう修正しました。
#6355: no-underscore-dangle
super
に続くアンダースコアを持つプロパティを許可するオプションが追加されました。
もともと this
に続くアンダースコアを持つプロパティを許可するオプションは存在しました。これはその拡張になります。
/*eslint no-underscore-dangle: [error, {allowAfterThis: true, allowAfterSuper: true}]*/
// ✔ GOOD
class A {
constructor() {
this._value1 = 1 // OK
}
}
class B extends A {
constructor() {
super()
this._value2 = super._value1 + 1 // OK
}
}
// ✘ BAD
var obj = new A()
console.log(obj._value1) //ERROR: Unexpected dangling '_' in '_value1'.