javascript - 在 webpack 中有條件地引入文件
我只想在不是為 DEBUG 的情況下,將檔案捆綁到生產建置中;
所以我已經使用了 webpack.DefinePlugin 並設定變數 DEBUG === true。
也使用預設選項配置 webpack.UglifyJsPlugin
在 js 檔案中,我是這樣做的:
const A = DEBUG === true ? null : require('./some-debug.js');
//do things with A, for example
console.log(A)
我檢查了最終的打包文件,A 被替換為 null(因此 DefinePlugin 正常工作),但 some-debug.js 文件的內容仍然在打包的 js 中。
有可能讓 webpack 不需要這個檔案嗎?
附註:我想我可以使用 resolve.alias 來解析 './some-debug.js' --> undefined。但是我想保持我的 webpack.config.js 通用,不想應用太多的 resolve.alias 條目。
謝謝
答案#1
它無法與三元運算子一起使用。
let A;
if (DEBUG === true) {
A = require('./some-debug.js');
}
