【发布时间】:2019-12-15 12:25:31
【问题描述】:
嘿,我有一个简单的 Todo 应用程序,客户端安装了create-react-app,服务器安装了node。我想在我的应用程序中设置env 变量,但我很困惑如何正确地做到这一点。
我已将我的.env 文件设置在应用程序的根目录中。
在.env 文件中只有REACT_APP_HOST=http://localhost:3000。
我想像这样在client 目录中显示它:
const { REACT_APP_HOST } = process.env;
console.log({ REACT_APP_HOST });
上面的代码显示undefined。整个process.env 是一个空对象。
我尝试将.env 移动到client 目录,然后它运行良好,但这不是我认为的重点。
如果我想在server 侧也使用.env 变量,如何正确执行?在我的情况下,我是否需要创建两个单独的 .env 文件来为客户端和服务器提供服务,或者 create-react-app 需要一些额外的配置才能由一个 .env 文件提供服务?
如果对这里有帮助,请留下我的 github repo。
【问题讨论】:
-
是的,您需要为您的服务器和您已经设置的客户端创建一个 .env。
-
我的示例 mern 应用程序 github.com/EliHood/ReactExpressPhotoShareApp,它使用 .env 文件作为服务器和客户端文件夹。希望这会有所帮助。
标签: javascript node.js reactjs environment-variables create-react-app