最佳答案
我有一些开发的东西-例如模拟,我不想膨胀我的分布式构建文件。
在 RequreJS 中,你可以在一个插件文件中传递一个配置,并且基于该文件有条件地需要一些东西。
对于 webpack 来说,似乎没有这样做的方法。首先,为了创建一个环境的运行时配置,我使用 解除,化名根据环境重新定义一个需求,例如:
// All settings.
var all = {
fish: 'salmon'
};
// `envsettings` is an alias resolved at build time.
module.exports = Object.assign(all, require('envsettings'));
然后在创建 webpack 配置时,我可以动态地分配 envsettings
指向哪个文件(即 webpackConfig.resolve.alias.envsettings = './' + env
)。
然而,我想做的是:
if (settings.mock) {
// Short-circuit ajax calls.
// Require in all the mock modules.
}
但是很明显,如果环境不是 mock,我就不想构建这些模拟文件。
我也许可以再次使用 Resolve.alias 手动将所有这些需求重新指向一个存根文件——但是有没有一种方法感觉不那么糟糕呢?
有什么办法吗? 谢谢。