Приложение React не может получить доступ к env-файлу root - PullRequest
0 голосов
/ 24 марта 2020

Контекст: - приложение стека MERN - развернуто в Heroku - приложение React, созданное с помощью create-react-app

Вот моя структура папок:

структура папок

На моем сервере app.js я могу получить доступ к переменным .env, требуя этого следующим образом: require('dotenv').config({ path: '../.env' });

Я пытаюсь получить доступ к переменным env в своем приложении React, но не могу показаться чтобы получить доступ к переменным в файле root .env, и я не могу указать путь в React (можно?) для .env, как в server/app.js.

Единственный способ, которым я могу заставить его прочитать любое значение переменной .env, если я переместил файл .env в каталог client, поэтому мой обходной путь на данный момент - переместить .env в мой каталог клиента и обновить код на моем сервере, чтобы потребовать это как таковое: require('dotenv').config({ path: '../client/.env' });

Этот обходной путь исправляет это, но есть ли лучший способ / лучшая практика, позволяющая файлу .env находиться в папке root?

Do Мне нужно извлечь приложение create-реакции-приложение и настроить некоторые пользовательские конфигурации?

Дополнительная информация:

Мой локальный файл .env содержит:

REACT_APP_API_URL=http://localhost:5000

Мой клиент / пакет. json Сценарии:

  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },

1 Ответ

0 голосов
/ 24 марта 2020

Извините, мисс поняла ваш вопрос.

В create-react-app вам не требуется модуль dotenv, ref: https://create-react-app.dev/docs/adding-custom-environment-variables/

Вы? Вы уверены, что ваша местная среда development?

...