Reactjs 如何根据环境为gulp提供不同的配置?

Reactjs 如何根据环境为gulp提供不同的配置?,reactjs,gulp,environment-variables,Reactjs,Gulp,Environment Variables,我有一个chrome扩展React项目,它是用gulp构建的。我想根据环境传播配置值。例如,使用CHROME\u ENV=staging我希望拥有config.oauth\u client\u id='',并能够根据环境更改它。因此,问题有两个方面: *如何基于环境变量使用gulp构建不同的文件? *如何构造我的React项目,以便有一个存储我的配置的非常全局的config模块或变量。在gulpfile.js中,您可以使用dotenv,()设置环境变量,或者只需将gulp脚本传递给它们: NOD

我有一个chrome扩展React项目,它是用gulp构建的。我想根据环境传播配置值。例如,使用
CHROME\u ENV=staging
我希望拥有
config.oauth\u client\u id=''
,并能够根据环境更改它。因此,问题有两个方面: *如何基于环境变量使用gulp构建不同的文件?
*如何构造我的React项目,以便有一个存储我的配置的非常全局的
config
模块或变量。

在gulpfile.js中,您可以使用dotenv,()设置环境变量,或者只需将gulp脚本传递给它们:

NODE\u ENV=staging gulp some命令

在节点中,您可以将其引用为
process.env.node\u env

将环境变量传递给构建取决于您使用的是什么

对于webpack,以下是一个很好的答案:

对于browserify,您很可能会看到:

我使用在启动脚本时设置的环境变量或.env引导客户端脚本,然后通过在脚本标记中呈现json从服务器发送脚本。这可能不适用于您,因为它是一个浏览器扩展,需要在没有服务器的情况下执行,并且应该在构建时注入