Как сделать рабочую сборку приложения React с пользовательским режимом? - PullRequest
0 голосов
/ 26 февраля 2020

Создано приложение с использованием CRA с "react-scripts": "3.3.1", однако у меня есть проблема с режимами сборки, например, в Vue -CLI я мог бы сделать это:

npm run build -- --mode staging
// any ENV name i want

Но в CRA, есть:

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

Я пробовал что-то подобное:

yarn build --mode staging

Но он использует .env.production переменные. У меня есть .env.staging для среды «STAGING». Как я могу это сделать?

Я использую разные конечные точки API на нескольких производственных серверах, поэтому мне нужен этот режим.

1 Ответ

0 голосов
/ 29 февраля 2020

Оказывается, это уже задокументировано здесь: https://create-react-app.dev/docs/deployment#customizing -условия-среды-для-произвольных-сред-сборок

Нам просто нужно yarn add env-cmd, тогда:

{
  "scripts": {
    "build:staging": "env-cmd -f .env.staging npm run build"
  }
}
...