Установите внешние параметры в соответствии с NODE_ENV - PullRequest
0 голосов
/ 04 октября 2018

Я пытаюсь установить внешнюю конфигурацию в моем веб-пакете в соответствии с NODE_ENV.

Вот мой код скрипта из package.json:

"scripts": {
    "build": "set NODE_ENV=production && webpack --mode production",
    "start": "webpack-dev-server --hot --mode development"
  },

Затем в моем webpack.config.js У меня есть следующий код:

externals: {
      'Config': JSON.stringify(process.env.NODE_ENV === 'production' ? {
          apiUrl: "."
      } : {
          apiUrl: "http://localhost:3000"
      })
    },

Как-то это не работает.Я всегда получаю "false" (localhost) в качестве значения.Я на 100% уверен, что process.env.NODE_ENV задан, поскольку, во-первых, я регистрирую его в начале файла (console.log (process.env.NODE_ENV)), и он дает мне «production» в качестве ответа.

Во-вторых, я попытался создать еще одну конфигурацию, например:

externals: {
   'Test': {"mytest": process.env.NODE_ENV } ...

, и это устанавливает mytest на «производство» ....

Я понятия не имею, почему это не такДля работы я скопировал код из stackoverflow ( Как сохранить файл конфигурации и прочитать его с помощью React ).

Я попробовал все ... Я обернул JSON.stringify вокруг других частейЯ пытался сделать дебафф настолько хорошо, насколько смог.Вот уже четвертый час я провожу над этой проблемой, и я думаю, что сейчас хороший момент, чтобы попросить совета.

Если вы поможете мне решить эту проблему, я был бы очень благодарен!

Хорошего дня.

...