1. ホーム
  2. node.js

[解決済み] npmスクリプトの実行時に出力を抑制する方法

2022-07-31 23:18:58

質問

私はビルドツールとして npm スクリプトを試すことにしました。 私が解決したい 1 つの問題は、何かが linting を通過しないときに jshint を実行するスクリプトを実行すると、大量の "npm ERR!" 行が表示されることです。 私は、リンターからの出力がより有意義であるため、これらを抑制したいと思います。

これをグローバルに設定する良い方法はありますか、そして、各スクリプトの実行のために設定する方法はありますか?

どのように解決するのですか?

すべてのスクリプト。

npm の出力を全体的に抑制することで、これを解決できます。ログレベルを silent に設定することで解決できます。

それぞれの npm run を呼び出します。

npm run --silent <your-script>

あるいは、グローバルに .npmrc ファイル(このファイルはプロジェクトディレクトリでもホームフォルダでも構いません)に次のように記述します。

loglevel=silent

リソース

npmログレベル設定。 https://docs.npmjs.com/misc/config#loglevel

npmrcです。 https://docs.npmjs.com/misc/config#loglevel

それぞれのスクリプトを、個別に。

linting のような特定のスクリプトでこの問題を回避するための簡単なトリックは || true を追加することです。これは、npmの設定を変更することなく動作します。

これにより、スクリプトが常に 0 ステータスで終了するようにします。これは npm を騙してスクリプトが成功したと思わせ、その結果 ERR のメッセージを隠します。 もっとはっきりさせたい場合は、この後に || exit 0 を追加しても同じ結果になります。

{
  "scripts": {
    "lint": "jshint || true",
   }
}