.env показывает неверные значения

Итак, у меня есть файл с именем .env со следующим содержанием

NODE_PATH=./src
NODE_ENV=what
TEST=test

И я называю это в моем index.js в моем приложении реакции.

 require("dotenv").config();
console.log(process.env);

...

показывает следующий вывод

NODE_ENV: "development"
PUBLIC_URL: ""

Я подумал, может быть, я объявил другой файл.env где-то еще, но это не так. Я искал свой проект для PUBLIC_URL и он не находится нигде в моем проекте. Я даже не знаю, что еще проверить на данный момент.

3 ответа

Решение

Если вы используете CRA, то вам нужно сделать: REACT_APP_TEST=test и перезагрузите сервер dev, чтобы он отображался в вашем приложении, как и ожидалось.

В реагирующем коде вы должны скомпилировать переменные окружения во время, ну, во время компиляции, потому что во время выполнения там можно получить доступ только к подделке process.env объект. Если вы не используете рендеринг на стороне сервера.

См. Также: Передача переменных, зависящих от среды, в веб-пакете.

Если вы использовали create-react-app для начальной загрузки вашего проекта, то вы должны использовать переменные среды, такие как REACT_APP_NODE_ENV=development,

После добавления любой новой переменной среды необходимо перезапустить сервер разработки.

Другие вопросы по тегам