我想使用Webpack的 提供Plugin 用函数来替换一个自由变量。在worker中,我想用一个不同的实现来替换它。
无论是webpack的 装卸工 也不是GoogleChromeLabs的 工作者插件(WorkerPlugin) 似乎允许这样做。后者很有前途,但是--尽管它声称 "在捆绑worker代码时不会运行任何配置好的Webpack插件",但主配置中的ProvidePlugin会与传递给WorkerLoader的插件进行交互。
这里是一个简单的配置示例(只有插件部分)。
plugins: [
new webpack.ProvidePlugin({
_X_: ['/path/to/a', 'default'],
}),
new WorkerPlugin({
globalObject: false,
plugins: [
new webpack.ProvidePlugin({
_X_: ['/path/to/b', 'default'],
}),
],
}),
]
我的问题是: 我如何为worker中的自由变量指定不同的实现(模块)?
我并不拘泥于任何特定的插件或加载器(ProvidePlugin、worker-loader、worker-plugin),但越标准越好。
回答:我不知道如何指定一个变量。我不知道如何指定变量的不同实现,但我知道要在一个模块中这样做。我刚刚更新了 回购,希望对你有所帮助。现在即使是深度的工人依赖也能用了。