ここにやる気が出る例を挙げましょう。私はコードを開発していて、何が間違っているのかを知りたいので、
function foo() {
console.log("Look its 2016 and I'm still printf debugging");
}
ただし、ビルド プロセスでは、ビルド システムの一部として esLint が実行され、設計上、esLint が失敗した場合はビルド パイプラインの残りの部分も実行されません。error Unexpected console statement no-console
dev
私が実際に望んでいるのは、特定のルールがオフになっている(または警告に変換されている)環境を設定し、次にproduction
厳格なルールがオンになっている環境を設定することです。そして、それをローカルで簡単に切り替えて、CI サーバーに送信する前にコードが機能することを確認できるようにしたいと考えています。
これを実現するための関連コード スニペットが見つからないので残念です。私のビルド環境はnpm
スクリプトのみです (esLint CLI + package.json のみを使用) が、別のビルド環境からソリューションを移植できれば幸いです。
現時点では、// eslint-disable-line
ローカルで.eslintrc
ファイルを変更して、それを誤ってチェックインしないように祈るしかありません。もっと良い方法があるはずです。
ベストアンサー1
ルールを分岐するNODE_ENV
.js
eslint config ( ) のバージョンを使用して、変数eslintrc.js
に基づいてルールを分岐することができます。NODE_ENV
でeslintrc.js
:
rules: {
'no-console':
process.env.NODE_ENV === 'production'
? 'error'
: 'warn'
}
スクリプトpackage.json
:
"scripts": {
"lint": "eslint",
"lint:prod": "NODE_ENV=production eslint"
}
ルールの 1 つのバージョンを使用し、CI はもう 1 つのバージョンを使用します ( NODE_ENV
CI が に設定されていると仮定production
)。