用.env反应env变量

Ant*_*nte 5 environment-variables reactjs create-react-app

我正在尝试关注从react-create-app添加env变量的文档,但没有成功:

https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md#adding-custom-environment-variables

在此输入图像描述

  • 在文档的内部根我有一个".env"文件(默认.env属性)
  • .env文件只包含一个变量'REACT_APP_API_HOST = http:// localhost:8080 '
  • 试图访问我的应用程序中的process.env(使用create react app创建)给我未定义

这是app.js,我试图访问process.env但没有成功.

我无法在代码中访问process.env.有关于如何做到这一点的工作实例吗?

Hos*_*ein 10

您可以在root上使用.env文件.

  • start: react-scripts start - 用途 .env.development
  • build_staging: "set REACT_APP_ENV=staging & react-scripts build" - 用途 .env.staging
  • build: "react-scripts build" - 用途 .env.production


joh*_*ngo 2

在您的 package.json 中,您最终必须NODE_ENV=development在启动脚本中添加。例如,NODE_ENV=development && node scripts/start.js对于已弹出的create-react-appNODE_ENV=development react-scripts start未弹出的。

编辑:显然NODE_ENV=development不是必需的,因为当您运行startbuild脚本时它已经被硬编码。根据文档,您的自定义环境变量应具有以下格式,REACT_APP*就像您已经完成的那样。

一个片段会很有帮助。