Webpack 生成时动态网页包文件导入
我正在开发一个浏览器扩展,它将为浏览器API提供包装,我希望能够在构建期间交换特定于浏览器的包装 我被告知使用Webpack 生成时动态网页包文件导入,webpack,Webpack,我正在开发一个浏览器扩展,它将为浏览器API提供包装,我希望能够在构建期间交换特定于浏览器的包装 我被告知使用process.env.NODE\u env Webpack将删除计算结果为false的代码分支,但我不确定如何/在何处使用它来实现我的目标 您很可能需要将DefinePlugin添加到插件阵列中,如下所示: const webpack = require('webpack') module.exports = { ... plugins: [ ... new webpac
process.env.NODE\u env
Webpack将删除计算结果为false的代码分支,但我不确定如何/在何处使用它来实现我的目标 您很可能需要将DefinePlugin添加到插件阵列中,如下所示:
const webpack = require('webpack')
module.exports = {
...
plugins: [
...
new webpack.DefinePlugin({
'process.env': {
'NODE_ENV': JSON.stringify('production')
}
}),
]
}
我看到这些例子到处都是。然而,我的情况是,我正在做一个扩展,我支持一个浏览器API,通过一组文件用于Firefox,另一组用于Safari。如何在文件导入之间动态交换,例如“从'API/Firefox/Storage'导入存储”,并将其交换为“从'API/Safari/Storage'导入存储”我不知道process.env.NODE_env如何处理在我尝试执行的操作的上下文中交换导入。那么,我是否需要一个中间文件,根据process.env.NODE_env值导入和导出所需的文件
if(process.env.NODE_env==='firefox'){…}else if(process.env.NODE_env==='safari'){…}
我认为如果是这样的话,您可以更容易地将两个网页包分别配置为FF和safari,并分别独立发布