Heroku: продвижение статической страницы реакции с различными переменными окружения
У нас есть сайт статического реагирования, развернутый с помощью трубопроводов Heroku.
Код выдвигается и автоматически создается на этапе. Для продвижения в производство мы хотели бы использовать функцию продвижения Heroku, поэтому мы уверены, что мы используем ту же сборку, которую мы тестировали на сцене.
Stage и Production имеют разные API, которые мы хотели бы настроить через переменные среды Heroku.
Вовремя npm run build
на сцене const apiUrl = process.env.API_URL
заменяется во время const apiUrl = "https://stage-api.example.com"
К сожалению (но, конечно), после продвижения в производство apiUrl
все еще тот от Стадии.
Кроме того, хак с фазой выпуска не работает, потому что изменения файловой системы во время фазы выпуска не будут развернуты.
Есть ли способ использовать функцию продвижения Heroku со статической сборкой вместе с переменными окружения (я знаю, что мы могли бы сделать перестройку за этап или загрузить конфигурацию на основе домена)?
Есть ли хорошие практики для развертывания статического сайта с конвейерами Heroku?
1 ответ
Тебе нужно иметь const apiUrl = process.env.API_URL
запускается во время выполнения, не вводится при сборке. Я использую функцию продвижения с помощью heroku, и приложение просто берет эту переменную, если process.env.NODE_ENV === 'production'