NPM Run Build всегда строит производство и никогда не разрабатывает - PullRequest
1 голос
/ 11 марта 2019

В моем унаследованном проекте я пытаюсь получить команду сборки для сборки версии, отличной от Production.

Я попытался изменить псевдоним в разделе script в package.json, чтобы передать дополнительные переменные, такие как --dev и --configuration=dev, но безрезультатно.


Проект имеет следующие файлы данных json:

 env.dev
 env.development
 env.production

с package.json имеет псевдоним сборки build:dev, который я запускаю npm run build:dev:

"scripts": {
    "start": "NODE_ENV=dev && react-scripts start",
    …
    "build:dev": "npm run build --dev --configuration=dev && react-scripts build"
}

Это работает и строит, но только для производства, которое я проверяю при просмотре результирующих файлов.


Если я удаляю файл env.production из каталога и запускаю команду сборки, он завершается с ошибкой:

Creating an optimized production build...
Failed to compile.

Module not found: Error: Can't resolve 'polyfills' in 'C:\Work\MyProj\WebSiteName\src'

, который просто сообщает мне, что может найти псевдоним polyfills в файле env.production для местоположения NODE_PATH=src/.

Мысли

1 Ответ

1 голос
/ 13 марта 2019

вам нужно установить env.переменная, как в «start» перед вызовом команды сборки.

"build:dev": "NODE_ENV=dev npm run build --dev --configuration=dev && react-scripts build"

...