javascript - Memerlukan file secara kondisional di webpack
Saya ingin menggabungkan file-file ke dalam build produksi saya hanya jika itu bukan untuk DEBUG;
Jadi saya telah menggunakan webpack.DefinePlugin dan menetapkan variabel DEBUG === true.
Juga konfigurasikan webpack.UglifyJsPlugin dengan opsi default
Dan di file js, saya melakukan seperti ini:
const A = DEBUG === true ? null : require('./some-debug.js');
//do things with A, for example
console.log(A)
Saya memeriksa file bundle akhir, A diganti dengan null (jadi DefinePlugin berfungsi dengan baik), tetapi isi dari file some-debug.js masih ada di bundle js.
Apakah mungkin membuat webpack tidak memerlukan file tersebut?
ps: Saya pikir saya bisa menggunakan resolve.alias untuk menyelesaikan './some-debug.js' --> undefined. Tapi saya ingin menjaga webpack.config.js saya tetap umum, tidak ingin menerapkan terlalu banyak entri resolve.alias.
Terima kasih
Jawaban #1
Ini tidak bekerja dengan operator ternary.
let A;
if (DEBUG === true) {
A = require('./some-debug.js');
}
