2015-09-13 9 views
10

ESLint設定ファイルでいくつかのルールを定義しました。このファイルには、ESLintをPhpStormと連携させてESLintエラーを自動修正する方法

Preferences 
    ->Languages and Frameworks 
    ->JavaScript 
     ->Code Quality Tools 
     ->ESLint 

に取り付けられている。そして、私は彼らが一致しないエラーがあるように見えるとき、コードエディタ内のすべてのルールが示されているので、それが正常に動作します参照してください。また、「コード・インスペクタ」を使用すると、インスペクタですべてのエラーが検出され、下部に小さなウィンドウが表示されます。このエラーのそれぞれにautofixを適用する可能性もありますが、これを実行しようとすると、PhpStorm設定セクションのESLint設定ページにリダイレクトされました。それは次のようになります。

enter image description here

私はそれをクリックしたときに自動にそれを修正する必要があるリンクがあるはずはなく、単にESLintコンフィグポップアップウィンドウを開くリンクがあります:

enter image description here

これを正常に動作させるにはどうすればよいですか?私はPhpStormのドキュメントを見ようとしていますが、成功はしていません。

+0

は、あなたがチェックしましたか?例えば。パスが悪い場合でもNetBeansでポップアップします。はいの場合は、おそらくバグレポートを提出するべきです。 intelliJの人はimhoをうまくサポートする傾向があります。 – m02ph3u5

+2

ESLintはサードパーティのツールです。 IDEには、IDEウィンドウ内にそのツールによって報告されたすべての問題を組み込み(IDEのネイティブ)検査と同様に表示することができる素敵な統合機能があります。サードパーティのツールで報告された問題は、組み込みの検査にはマッピングされません。これらは完全に別個のものです。私は100%確信していませんが、ESLintがファイル全体で動作することを考慮すると、1つのエラーインスタンスのみを修正する方法はありません。 – LazyOne

+0

あなたのために自動修正を行うプロセスは何ですか? ESLintは、少なくともジェットではなく、エラーを自動修正することはできません。あなたは[**ここに**](https://github.com/eslint/eslint/issues/2203)で見ることができるように、それはv.2のウィッシュリストにあります。とにかく、[** fixmyjs **](https://github.com/kirjs/gulp-fixmyjs)gulpプラグインを見てみてください。 [** Here **](http://addyosmani.com/blog/fixmyjs/)はfixmyjsに関するさらに詳しい情報です。 – DavidDomain

答えて

3

IDE(PhpStorm/Atom/Sublime/WebStorm)でこれを行う方法が見つかりませんでした。ただし、eslint --fixを実行すると、コマンドラインでいくつかの問題を修正できます。

あなたはこれらの手順を実行する、ESLintの基本的な理解が必要になります。

1)ESlintインストール:グローバル

を:

npm i -g eslint eslint-config-airbnb 

(Airbnbのスタイルガイドが広く使用されています - http://nerds.airbnb.com/our-javascript-style-guide/。)

ローカル(好ましい):

node_modulesローカルディレクトリを使用している場合は、ローカルにインストールすることをお勧めします。プロジェクトディレクトリから次のコマンドを実行します。

npm i --save-dev eslint eslint-config-airbnb 

(あなたが、その後./node_modules/.bin/eslintからeslintを実行することができます)

2)次の行を使用して、プロジェクトディレクトリ内のファイル.eslintrcを作成します。

{ "extends": "airbnb" } // We installed airbnb's style guide in step 1. 

3)バックアップ/あなたのソースコードファイルは

バックアップあなたは、lintのたいファイルをコミット。次のコマンドは、いくつかの行を変更する可能性があります。

4)を実行しeslint --fixは、次のように:

eslint --fix path/to/file.js 

eslint --fix path/to/files/*.jsx 

これはあなたのファイル内のエラーの10Sを解決します!

5)いくつかのエラーでeslint --fix停止した場合は、再び

を実行し、手動でそれを修正私はeslint --fixは、一度にすべてのerrosを解決しないことに気づきました。つまり、ファイル内の特定のポイントまで実行され、自動的に処理できないエラーで停止することがあります。

eslintがスタックされている最上位の問題を削除した場合、コマンドを再度実行すると、ファイル内のエラーがさらに修正されます。リンス、リピート。

-

eslintは、2015年の希望「--fix」オプションは、将来的に良くなるにはいくつかの新しい機能を追加しました:パスはあなたがそこに置くことを有効な場合http://eslint.org/blog/2015/09/eslint-v1.5.0-released

+0

Atomの 'linter-eslint'はセーブ時に自動修正できます。 – IanVS