🐈
Next.js で本番環境だけ console.log 等を削除する
「デバッグ用に console.log
等を使用したいけど、本番環境ではコンソールに表示させたくない」といった場合に有用です。
console.* を削除する設定
next.config.js に以下の設定をすることで、アプリケーションコード内のすべての console.*
を削除できます。(node_modules は除く)。 babel-plugin-transform-remove-console
に似ています。
next.config.js
module.exports = {
compiler: {
removeConsole: true,
},
}
本番環境だけ削除する
環境変数 NODE_ENV
が production
の場合だけ削除します。
next.config.js
module.exports = {
compiler: {
removeConsole: process.env.NODE_ENV === 'production',
},
}
補足
本番環境だけ console.error
以外を削除する、等の設定もできます。
next.config.js
module.exports = {
compiler: {
removeConsole:
process.env.NODE_ENV === "production"
? {
exclude: ["error"],
}
: false,
},
}
Discussion