Webpack 构建时网页包中的动态需求
考虑到有网页配置Webpack 构建时网页包中的动态需求,webpack,Webpack,考虑到有网页配置 ... entry: { 'bundle-with-dependency-a': 'common-entry.js', 'bundle-with-dependency-b': 'common-entry.js' }, resolve: { alias: { 'dep-a': ..., 'dep-b': ... }, }, 我希望在common entry.js中有这样的内容: require('dep-' + e
...
entry: {
'bundle-with-dependency-a': 'common-entry.js',
'bundle-with-dependency-b': 'common-entry.js'
},
resolve: {
alias: {
'dep-a': ...,
'dep-b': ...
},
},
我希望在common entry.js
中有这样的内容:
require('dep-' + entryName.slice(-1));
也就是说,我想从配置中提供特定需求的定义
问题是可能有两个以上的依赖选项,我避免复制粘贴。我将在构建时做这件事,而不是用JSONP来要求块
如何使这一点成为动态的
我在这里唯一的选择是为每个dep进行不同的配置,但这需要进行多个Webpack传递,而不是单个。不太方便。使用:
webpack.config.js
{
条目:{
'bundle-with-dependency-a':'imports?depName=>dep-a!./common entry.js',
'bundle-with-dependency-b':'imports?depName=>“dep-b”!./common entry.js',
},
// ...
}
depName
变量随后将暴露于common entry.js
模块。看起来不错,我甚至不确定是否知道可以在条目中使用加载器。我想知道除了“导入”之外,是否还有其他方法,可以有几个具有相同('a'或'b')前缀的DEP,这将使加载器查询字符串相当长。然后我建议您考虑制作自己的加载器,或者创建一个为您生成查询字符串的函数。例如:imports({depName:'dep-a'})+'./common entry.js'
Yes,构造查询就足够了。我想知道是否还有其他的迂回之路,例如context
和ContextReplacementPlugin(关于它们的潜在用途的网页文档少得可笑)。