Учитывая секцию scripts
в вашем package.json
, он не устанавливает никаких переменных ENV.Однако это можно сделать, если вы хотите.Например, чтобы удобно установить переменные ENV во всех операционных системах, вы можете использовать пакет, такой как cross-env (npm i --save-dev cross-env
) и обновить раздел scripts
до чего-то похожего на
{
"scripts": {
"build": "cross-env NODE_ENV=production webpack --config config/webpack.config.js"
}
}
и доступ к ним в вашем конфигурационном файле (webpack.config.js
) как process.env.NODE_ENV
В дополнение к этому, вы можете сделать запуск webpack
вместо npm run build
успешнымпутем установки пакетов webpack глобально (npm i -g webpack webpack-cli
), но это не рекомендуется .Рекомендуется, чтобы необходимые пакеты устанавливались локально и зависели от версий пакетов, определенных в package.json
.Даже если это не обязательно устанавливает переменные ENV, вам нужно сделать это явно, как указано выше, или использовать ваш предпочтительный подход.
По сути, ваш npm
, который установлен глобально, заботится о npm run build
который в свою очередь запускает команду webpack
, которая связана с вашими локальными пакетами.Попытка запустить webpack
непосредственно в вашем случае не удалась, так как пакеты веб-пакетов не установлены глобально.