我在我的应用程序中使用env变量,因此我不会公开公开我的私有API密钥。它们像这样设置在.env
文件中(从git中排除)-REACT_APP_ENV_NAME
在开发过程中可以正常工作。
我已经从站点设置面板中将它们添加到Netlify env配置中,但是它们似乎在生产过程中不起作用(只是显示为未定义)。你们是否曾经有过相同的问题/无法解决?
答案 0 :(得分:1)
您需要在环境变量中使用GATSBY_
前缀。因此,您的REACT_APP_ENV_NAME
将位于Netlify后台的GATSBY_REACT_APP_ENV_NAME
。
您可以在Gatsby documentation,此Netlify community thread和Netlify documentation中查看更多信息。
请注意,您不应将.env。*文件提交到源 控制和使用连续部署提供的选项 (CD)提供者。 Netlify的构建环境就是一个例子 变量。
GATSBY_API_URL=https://dev.example.com/api API_KEY=927349872349798
Gatsby环境变量
任何以
GATSBY_
为前缀的环境变量都将由 Gatsby,并在浏览器中提供了客户端JavaScript 访问。有关环境变量的更多信息,请访问Gatsby文档 信息。