javascript - 如何在命令中设置 process.env 变量并在 webpack 文件中检索
问题描述
以下是命令 -
"analyze": "node scripts/analyze.js"
我试图在其中设置一个process.env
变量,例如-
"analyze": "node scripts/analyze.js BUNDLE_ANALYZE=true"
在我的webpack.config.js
文件中,我正在写一个类似的条件 -
if(process.env.BUNDLE_ANALYZE) {
// DO a Bundle analyzer push to the main plugin array
}
但它不起作用,让我知道我在这里做错了什么。
解决方案
变量声明应该在节点之前:
"analyze": "BUNDLE_ANALYZE=true node scripts/analyze.js"
请记住,“true”将作为字符串出现。
您还可以使用标志:
node scripts/analyze.js --analyse
然后在你的 webpack 配置中:
plugins: [
process.argv.includes('--analyse')
? new (require('webpack-bundle-analyzer')).BundleAnalyzerPlugin()
: null,
].filter(Boolean),
推荐阅读
- adobe - 在标题栏中显示完整路径(adobe - 括号编辑器)
- reactjs - 函数的类型推断作为 Typescript 中的参数
- server - 在后端找不到 openssl
- c# - 如何在特定的 ThreadPool 上调度 C# 异步函数。(提供 Kotlin 示例)
- jboss - JBoss 强制启动加载惰性、被动或按需服务
- angular-moment - 如何以角度为 Moment 分配空白值?
- laravel - 如何在视图中调用来自 laravel 可邮寄的数据
- spring-boot - 在循环的情况下不返回 Junit Mock 响应
- php - 如何使用文件配置 .env 包含数据库登录以连接到 mysqli?
- python - if语句中如何调用类的方法?