如何为ReactJS设置.env变量
我有一个ReactJS应用程序,我想部署到3个生产环境:production1、production2和production3 我的环境文件有:.env(用于开发)、.env.production1(生产1)、.env.production2(生产2)和.env.production3(生产3) 我运行systax“npm start”,但它从文件.env读取变量 是否有任何方法可以使用特定的.env文件运行“npm start” 比如:如何为ReactJS设置.env变量,reactjs,Reactjs,我有一个ReactJS应用程序,我想部署到3个生产环境:production1、production2和production3 我的环境文件有:.env(用于开发)、.env.production1(生产1)、.env.production2(生产2)和.env.production3(生产3) 我运行systax“npm start”,但它从文件.env读取变量 是否有任何方法可以使用特定的.env文件运行“npm start” 比如: npm start (read from .env fi
npm start (read from .env file)
npm start .env.production1 (read from .env.prod1 file)
npm start .env.production2 (read from .env.prod2 file)
npm start .env.production3 (read from .env.prod3 file)
我在这里读到了一篇参考文献:但这是关于“开发”、“测试”和“生产”的。我的案例是生产,但适用于3种环境
这就是我在将生产部署到客户机期间遇到的问题。
如果有人投反对票,请告诉我为什么
谢谢。您需要四个.env文件
.env
.env.production1
.env.production2
.env.production3
然后使用
let mode = process.env.NODE_ENV
哪个可以是production1、production2或production3
然后使用模式获取其他配置数据,如
require('dotenv').config({ path: `/path/to/.env.${mode}` })
当您需要在配置之间切换时,只需修改.env,如下所示
NODE_ENV = production1
或
或
我认为这会对您有所帮助。从上面的链接中,npm start将选择.env.development,npm build将在.env.production中使用环境变量。我知道,但我的问题是针对3种环境的生产。您看过作者如何添加
build:staging
。您可以为不同的生产环境添加build:staging,但如何使用它?运行“npm build:staging”不会使workprocess.env.NODE\u env为开发、测试或生产,但这是3种环境的产品:env.production1、env.production2和env.production3。你是怎么处理的?我的问题是有任何类似“npm start.env.production1”的语法吗?你现在可以试试我的答案
NODE_ENV = production2
NODE_ENV = production3