Как внедрить переменные окружения в React во время сборки
Я в настоящее время использую Neutrinojs и получил ожог от проблем совместимости, возникающих с v8. Похоже, что решение "Использовать Neutrino v.9 beta", но в этом сценарии многие функции, от которых я зависел в v.8, облажались.
В частности, недавние изменения в WebPack сделали Neutrino 8 нестабильным, и мне пришлось обезьяньим патчем
Вот такие задачи я делаю:
- Импорт переменных env в React для таких значений, как идентификатор клиента Auth0
- Настройте html / ссылки, чтобы использовать CSS, шрифты и т. Д.
- Если проверить код
- написать тесты Жасмин
- Включить статические файлы / папки в сборку
- Иметь сервер разработчика, который реагирует на URL-адреса маршрутизатора:
localhost:5000/users/bob
не загружается в Neutrino без взлома сервера разработки.
Учитывая мое желание "Не Neutrino", как реагирует система сборки работает и как она позволяет вам обрабатывать / настраивать эти функции?
Заранее спасибо Дэвид Эдельхарт
Я использовал Neutrino v.8, но многие из этих задач требуют значительных настроек и имеют проблемы с памятью, которые периодически возникают, несмотря на то, что сайт на самом деле довольно маленький.
1 ответ
Если вы используете CRA (create-реагировать-приложение), любая переменная среды, которая не начинается с REACT_APP_
будет сброшен. Таким образом, вы должны назвать переменные среды как REACT_APP_AUTH0_CLIENT_ID
, Чтобы внедрить пользовательские переменные среды, вы можете использовать что-то вроде cross-env
или .env
файл.
Для получения дополнительной информации: https://facebook.github.io/create-react-app/docs/adding-custom-environment-variables