【问题标题】:not able to get .env variable value in react js无法在反应 js 中获取 .env 变量值
【发布时间】:2020-09-24 11:08:30
【问题描述】:

当我试图从 .env 文件中获取值时,它说未定义,我在 .env API_URL 中定义了变量,我在 react js 中缺少什么吗?我正在使用 dotenv npm,谁能帮我解决这个问题?在这里我已经上传了我的代码,任何帮助将不胜感激

const dotenv = require('dotenv');
const fs = require('fs');
alert(process.env.API_URL);

.env

API_URL=https://********/api/v1/

【问题讨论】:

  • 如果它在没有弹出 webpack 的情况下创建 react 应用程序,那么 env 变量必须以 REACT_APP 为前缀,所以你应该有 REACT_APP_API_URL env 变量和您不需要 dotenv 来获取这些变量。更多信息Create react app docs

标签: reactjs dotenv


【解决方案1】:

检查.env文件是否在工作目录的根目录下

根据反应文档: 您必须创建以 REACT_APP_ 开头的自定义环境变量。除了 NODE_ENV 之外的任何其他变量都将被忽略,以避免在机器上意外暴露可能具有相同名称的私钥。更改任何环境变量都需要您重新启动正在运行的开发服务器。

【讨论】:

  • 它在根文件夹中
  • 不是 React 文档,而是 CRA 文档。 React 不需要 REACT_APP 前缀,CRA 需要前缀。您的解决方案可能有效(如果应用是 CRA),但它具有误导性,因此请在您的回答中解决问题。
  • 我以为你开始使用 create react 应用程序,正如 Nikul Panchal 所说的,这正是我想说的!
【解决方案2】:

在 React 项目中定义环境变量时要记住的两个重要事项

  1. 更改 .env 文件后始终重新加载您的应用程序
  2. 始终在变量前加上 REACT_APP_

【讨论】:

    猜你喜欢
    • 2023-04-10
    • 2015-04-20
    • 2019-02-12
    • 2019-04-12
    • 2020-06-23
    • 2022-01-04
    • 2021-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多