ESLintはJavaScriptのための静的検証ツールです。
明らかなバグの発見や、括弧やスペースの使い方などをプロジェクトで統一するのに役立ちます。
🍣 インストール手順
ESLintのプロジェクトへ導入するのに次のパッケージをインストールします。
ESLintで使うスタイルガイドは「airbnb/javascript」にします。
# React.jsのアプリの場合 |
🍄 設定手順
ESLintの設定手順は.eslintrc
に記述します。
React.js対応
{ |
Node.js対応
{ |
🏀 ruleの設定について
rules
の設定は次のようにワードか、数値で設定できます。
ワード | 数値 | 説明 |
---|---|---|
off |
0 | ruleを満たしていない場合に何もしない |
warn |
1 | ruleを満たしていない場合に警告を出す(終了コードに影響はない) |
error |
2 | ruleを満たしていない場合にエラーを出す(終了コードで1を返す) |
そのほかに設定できるオプションです。
オプション | 説明 |
---|---|
grobals: { キー: true... } |
キーを登録しておくと定義済の変数とみなして警告を出しません |
詳細は「Configuring ESLint」を参照ください。
🐰 package.jsonの変更
package.json
にESlintを実行するための設定を追記します。src
は任意のフォルダを指定してください。
{ |
yarn run eslint
=>eslint
の静的解析を実行yarn run eslint --fix
=>eslint
の静的解析を実行、修正可能なものは自動で修正
🐝 コメントで警告を出さないようにする
特定の行の警告をコメントで無視するようにできます。
let thing = new Thing(); // eslint-disable-line no-use-before-define |
コメントの次の行を無視する場合はこちらです。
// eslint-disable-next-line no-use-before-define |
複数行を無視する場合はこちらです。
/*eslint-disable */ |
ファイル内ですべて無視する場合はこちらです。
/*eslint eqeqeq:0*/ |
🎳 許容するGlobal変数の設定
プログラム内で許容するGlobal変数を設定します。
{ |
🍮 補足:overcommitとの連携
「overcommit」というGit eventをhookしてさまざまなコマンドを実行できるツールがあります。
このツールとESLintを組み合わせる手順も書いておきます。
# .overcommit.yml (Add following comfigugration) |
あとは bundle exec overcommit --sign
としておけば git commit
の前に自動でESLintが実行されます。
🐯 補足:Werckerとの連携
CIツール「Wercker」でESLintを実行するための設定は次のとおりです。
eslint: |