NPM スクリプトは意図的にこのように動作するように設計されているため、終了コード 1 または 2 ( 以外のもの0
) は、オペレーティング システムで動作するのと同じようにポスト タスクの実行を妨げます。
--silent
フラグを使用することはオプションですが、スクリプトに他の問題がある場合に問題になる可能性があり、リント/テスト エラーなしでビルドが失敗し始めると、頭を壁にぶつけてしまうことになります。
ここで行う最善の方法は、プロセスを構成して、望ましくない状況でエラー終了コードを出力しないようにすることです。この場合... eslint の設定に基づいて、いくつかのエラーが正当にポップアップ表示されます。これにより、エラー終了コードが発生し、(当然のことながら) 次のタスクの実行が妨げられます。これは、npm スクリプトを使用しているときに実際に非常に便利です。エラーがあることがわかっているときに、テスト/ビルド ステップが不必要に実行されるのを防ぐことができるからです。
したがって、この場合、.eslintrc
プロジェクトにファイルを追加し、linting エラーと npm エラーの両方を処理するいくつかのルールを指定します。
以下に簡単なサンプル.eslintrc
ファイルを掲載しました。コマンドラインで実行すると、ファイルまたはファイルeslint
が自動的に検出され、それらの構成が順守されます。.eslintrc
.eslintignore
以下のサンプルはリンティング エラーをクリーンアップしますが、eslint がその「トリガー」を取得したときにスローされる終了コードを変更することに注意してください。ルールを に変更すると0
、そのパターンを認識してもアラートが表示されなくなります。
ルールコードの利用と設定についてもっと読むことができます.または... npmをビルドツールとして使用し、eslintの使用を含む私が作成したシードプロジェクトをチェックしてください: react-flux-npm-automation
// /path/to/project/.eslintrc
{
"parser": "babel-eslint",
"env":{
"browser":true,
"node":true,
"es6":true
},
"rules": {
"strict":0,
"quotes":0,
"no-unused-vars":0
}
}