我有一个项目正在使用Webpack从index.js
中产生root.js
,而后者又取决于dep.js
。像这样:
// ==== dep.js ====
console.log('A');
// ==== root.js ====
require('dep.js');
现在,我想修改webpack配置以生成2个文件-indexA.js
和indexB.js
,具体取决于dep.js
-depA.js
和depB.js
的2种修改,但保留root.js
完整或几乎完整。
理想情况下,我想要类似的东西:
// ==== depA.js ====
console.log('A');
// ==== depB.js ====
console.log('B');
// ==== root.js ====
require(`dep${VARIANT}.js`)
并且在webpack.config.js
中具有以下内容:
['A', 'B'].map(VARIANT => ...)
,结果分别为indexA.js
(包括(不含) depB.js
)和indexB.js
(包括不包括 depA.js
)
我已经检查过webpack.DefinePlugin
,但仍然无法想象它如何协同工作。
答案 0 :(得分:0)
我终于能够实现自己的目标:
webpack.config.js
内使用webpack.DefinePlugin
在编译时注入提供的变量值,并修改输出,以便不同的输出将注入不同的变量值。webpack.config.js
,使清理dist目录为可选webpack
两次,并通过环境变量注入不同的变量