Невозможно получить системную переменную env внутри реакции - PullRequest
0 голосов
/ 11 марта 2020

У меня есть настройка мини-куба, где у меня есть API, написанный в приложении SprintBoot, и у меня есть отдельное приложение REACT для пользовательского интерфейса.

В файле развертывания YAML для REACT я устанавливаю одну из переменных env, которые доступны из карты конфигурации. Однако, когда я делаю process.env.VARIABLE, он дает мне неопределенное значение. Я почти уверен, что использую его неправильно, и поэтому хочу узнать, есть ли какой-нибудь способ доступа к системной переменной среды внутри кода реагирования.

Пример кода в REACT (НЕ с использованием моей переменной. Скорее просто Переменная PATH):

onClickFunction() {
        console.log("Clicked!");
        alert('Button clicked! Env val = '+String(process.env.PATH));
    }

В предупреждении я вижу неопределенное. Но когда я сделал bash в модуле, я вижу это:

$ kubectl exec -it react-js-567dd44ccc-2kdbz -nem bash
root@react-js-567dd44ccc-2kdbz:/app# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

root@react-js-567dd44ccc-2kdbz:/app#

configmap дает мне имя службы весенней загрузки, чтобы я мог использовать его для вызова своего API из пользовательского интерфейса. Я просто пытаюсь получить доступ к этому имени переменной здесь. Это правильный способ сделать это? Или я должен строить это совершенно по-другому?

1 Ответ

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

Возможно, вам нужен точный путь к файлу .env.

Попробуйте это ...

const result = require('dotenv').config({ path: '/full/custom/path/to/your/env/vars' })

if (result.error) {
  throw result.error
}
...