在.env.development和.env.production中添加环境变量按预期进行(根据https://www.gatsbyjs.org/docs/environment-variables/)。我可以通过前端代码中的process.env
访问它们。
我不想对.env.production进行版本控制,所以我想知道是否可以在前端代码中加载Heroku配置变量(通过heroku config:set SOME_VAR=1
设置)?
谢谢!
答案 0 :(得分:0)
我个人喜欢通过使用settings-> Config Vars-> Reveal config vars然后设置KEY VALUE对在Heroku中添加env变量。
如果您想访问JS中的这些env变量,请参见Gatsby文档
除了.env。*文件之外,环境中带有GATSBY_前缀的任何变量都将在浏览器JavaScript中可用。
参考:https://www.gatsbyjs.org/docs/environment-variables/
GATSBY_ASSETS_URL
添加到我的KEY中,并将http://s3.amazonaws.com/bucketname
添加为VALUE。 .env.development
,其下面的行为GATSBY_ASSETS_URL=http://s3.amazonaws.com/dev/bucketname
。 render() {
return (
<div>
<img src={`${process.env.GATSBY_ASSETS_URL}/logo.png`} alt="Logo" />
</div>
)
}