![](/img/trans.png)
[英]how can we use environment variables properly with env.config.js file in react.js(i got undefined after reload)
[英]Understanding .env file and environment variables in React JS
我对 web 开发世界比较陌生,现在我正在尝试了解.env
文件在 React JS 中的用法。 因此,我阅读了多篇文章并观看了一些解释视频。 然而,他们中的大多数人都关注如何使用它而不是它实际上是什么。 我是否正确理解使用环境变量的主要好处是:
1) 它们使应用程序更容易维护,因为它们都存储在一个文件.env
2) 它们对用户不可见,不会显示和上传到 Git 存储库
它是否正确,还有什么我需要考虑的吗?
环境 (.env) 变量用于存储敏感信息,或者顾名思义,以环境为中心的信息(实时、开发、调试等...)
.env
文件也保存在.gitignore
,因此它不会被推送到任何存储库。
.env.example
是一个不保存在.gitignore
的文件,但其他开发人员需要知道如何以及在他们的.env
放入什么。 它看起来像这样:
.env.example:
REACT_APP_STRIPE_KEY=
MY_SECRET_KEY=
THIS=
FOO=
BAR=
基本上是.env
的空示例。 然后将其复制并填充.env
文件中的实际值,该文件仅可供该计算机上的开发人员使用,并由脚本在本地读取,然后脚本知道以何种模式启动应用程序,连接到哪个数据库,使用什么密码之类的
它们对于存储不属于状态或作为声明(深层)在源中的站点范围的值和设置很有用。
重要的是要知道,要反应使用它们,它们必须以REACT_APP_
。 这是因为环境是 nodejs 的,nodejs 将声明所有变量,除非它们以REACT_APP_
以REACT_APP_
开头的环境变量在构建时嵌入到应用程序代码中。
不要将任何秘密(例如私钥)作为REACT_APP_
变量存储在那里! 这将在 JS 构建中公开它们。
在您的反应应用程序中,您可以像这样访问变量:
let value = {process.env.REACT_APP_MYVALUE}
在 HTML 中,您可以这样使用变量:
<title>%REACT_APP_SITE_NAME%</title>
使用 create-react-app 快速阅读: https : //create-react-app.dev/docs/adding-custom-environment-variables
在根文件夹下创建一个.its.env文件
REACT_APP_(VARIABLE_NAME)=KEY_HERE
用法:当你在 .env 文件中添加一个变量时。 重新启动您的应用程序。
console.log( process.env.REACT_APP_(VARIABLE_NAME) )
和你的 .gitignore 文件,添加波纹管代码
.env
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.