Героку конфиг варс и гэтсби - PullRequest
0 голосов
/ 30 августа 2018

Добавление переменных окружения в .env.development и .env.production работает как положено (согласно https://www.gatsbyjs.org/docs/environment-variables/). Я могу получить к ним доступ через process.env в моем коде переднего плана.

Я не хочу контролировать версию моего .env.production, поэтому мне интересно, есть ли способ загрузить конфигурационные переменные Heroku (которые задаются через heroku config:set SOME_VAR=1) в моем коде переднего плана?

Спасибо!

1 Ответ

0 голосов
/ 16 октября 2018

Мне лично нравится добавлять переменные env в Heroku, используя настройки-> Config Vars -> Reveal config vars, затем устанавливая пару KEY VALUE.

Если вы хотели получить доступ к этим переменным env в JS, вот что-то из документации Гэтсби

В дополнение к файлам .env. * Любая переменная в среде с префиксом GATSBY_ будет доступна в браузере JavaScript.

Ссылка: https://www.gatsbyjs.org/docs/environment-variables/

  1. Я бы зашел в настройки Heroku и добавил GATSBY_ASSETS_URL к своему КЛЮЧУ и http://s3.amazonaws.com/bucketname в качестве ЗНАЧЕНИЯ.
  2. Тогда в моем коде у меня будет .env.development со следующей строкой GATSBY_ASSETS_URL=http://s3.amazonaws.com/dev/bucketname.
  3. Чтобы использовать мою переменную envronment в JS

render() { return ( <div> <img src={`${process.env.GATSBY_ASSETS_URL}/logo.png`} alt="Logo" /> </div> ) }

...