【问题标题】:Can you set a NODE_ENV variable for a staging site url in react?您可以在反应中为登台站点 url 设置 NODE_ENV 变量吗?
【发布时间】:2021-06-05 22:51:48
【问题描述】:

我正在使用以下 NODE_ENV 变量来使用不同的 API,具体取决于我是处于开发模式还是在实时站点上 process.env.NODE_ENV === 'development'

我还托管了一个暂存站点,我想使用与开发(本地)项目相同的 API。有没有办法将 URL 设置为另一个 NODE_ENV 变量?以便可以通过例如 process.env.NODE_ENV === 'test' 访问我的暂存 URL?

我希望 process.env.NODE_ENV === 'development' 成为我的本地项目,而 process.env.NODE_ENV === 'test' 成为我的暂存 URL,例如。 https://www.stagingsite.com。这将如何设置?

【问题讨论】:

  • 您只需设置它,但您可以在系统上设置任何正常的环境变量,或者您可以使用.env
  • @tadman 你能分享一些例子吗?我以前从未为特定项目这样做过
  • 这完全取决于您的操作系统和/或发行版的默认方法。我推荐.env,它更难犯规。
  • 我的项目的设置是我有一个使用特定 API 链接的本地环境,然后在我构建项目后,我将它上传到我希望被视为“开发”的暂存链接以及。实现这一目标的最佳方法是什么?

标签: node.js reactjs


【解决方案1】:

每个引导程序都提供了执行此操作的方法。 如果您使用的是 create-react-app 那么...试试这个 https://create-react-app.dev/docs/adding-custom-environment-variables/#what-other-env-files-can-be-used

然后在放置脚本命令之后创建环境文件并提供文件位置和名称并使用适当的环境运行构建脚本

"scripts": {
"build": "react-app-env --env-file=config/${BUILD_ENV}.env build",
"build:staging": "BUILD_ENV=staging npm run build",
"build:production": "BUILD_ENV=production npm run build",
...
}

虽然现在不推荐使用 react-app-env ,但现在试试这个 .. 这是我旧项目中的代码 sn-p... 现在 cra 和 dotenv 就足够了.. 虽然我需要创建流程

【讨论】:

  • 谢谢!这看起来像我需要做的但是我不完全确定如何实现我想要的。我的项目的设置是我有一个使用特定 API 链接的本地环境,然后在我构建项目之后,我将它上传到我也希望被视为“开发”的暂存链接。实现这一目标的最佳方法是什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-06-01
  • 1970-01-01
  • 2014-11-18
  • 2011-09-04
  • 1970-01-01
  • 2022-10-19
  • 1970-01-01
相关资源
最近更新 更多