【发布时间】:2020-01-05 04:50:42
【问题描述】:
我正在设置 ReactJS 项目以在运行时更改环境变量。
我有 2 个 ENV 变量:
1) NODE_ENV = 生产、开发
2) 风味 = Alpha、Beta
我想根据FLAVOUR 变量加载不同的配置、主题和图像。这已经完成并且正在运行。
构建命令:
1) 跨环境 NODE_ENV=production --env.FLAVOUR=Alpha webpack
2) 跨环境 NODE_ENV=production --env.FLAVOUR=Beta webpack
--
但是上面的命令在构建时改变了环境变量。但我想在构建后的运行时仅为生产环境更改 FLAVOUR 变量。
例如。 ./build cross-env --env.FLAVOUR=Alpha节点服务器
例如。 ./build cross-env --env.FLAVOUR=Beta节点服务器
./build 是构建目录,由 npm run build 命令创建。
--
这意味着当我将FLAVOUR 变量更改为Beta 并重新启动网络应用程序时
我的期望是它将成为Beta 应用程序和主题。
这有助于我们扩展这些 web 应用程序。它们可以重新利用一毛钱。
Webpack 生产:
new webpack.DefinePlugin({
'process.env.FLAVOUR': JSON.stringify(process.env.FLAVOUR),
})
【问题讨论】:
标签: reactjs npm redux environment-variables runtime