webpack 中的条件要求文件
Conditional require file in 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)
我检查了最终的 bundle 文件,A 被替换为 null(所以 DefinePlugin
工作正常),但是 some-debug.js
文件的内容仍然在 bundle js 中。
能不能让webpack不需要这个文件?
ps:
我想我可以用resolve.alias
来解析'./some-debug.js' --> undefined
。但我想保持 webpack.config.js 通用,不想应用太多 resolve.alias
条目。
谢谢
它不适用于三元运算符。
let A;
if (DEBUG === true) {
A = require('./some-debug.js');
}
我只想将文件捆绑到我的生产版本中,除非它不是 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)
我检查了最终的 bundle 文件,A 被替换为 null(所以 DefinePlugin
工作正常),但是 some-debug.js
文件的内容仍然在 bundle js 中。
能不能让webpack不需要这个文件?
ps:
我想我可以用resolve.alias
来解析'./some-debug.js' --> undefined
。但我想保持 webpack.config.js 通用,不想应用太多 resolve.alias
条目。
谢谢
它不适用于三元运算符。
let A;
if (DEBUG === true) {
A = require('./some-debug.js');
}