2

我的公司使用三种标准环境:开发、测试和生产。我的基于 create-react-app 的应用程序作为内容项托管在我们的 CMS 中,因此要将其放入任何环境,我需要运行该npm run build命令。

我创建了一个文件 config.js,它根据 中的变量导出不同的配置对象process.env,但这里的默认行为具有npm run build始终被视为生产的限制。这是有道理的,我只需要不同的行为。

我想做的是运行一个脚本,比如npm run build:dev,等等,它设置了一个我可以打开的 process.env 变量。本质上,我需要创建一个设置dotenv变量的 npm 脚本,然后调用npm run build.

实现这一目标的最佳方法是什么?

4

1 回答 1

2

您可以使用 cross-env 包(来自 npm)来定义环境变量。

只需安装软件包:

npm install --save-dev cross-env

并在定义变量时创建自定义脚本,例如:

{
  "scripts": {
    "build": "cross-env NODE_ENV=production webpack --config build/webpack.config.js"
  }
}

它对我的项目很有魅力。

更多信息在这里

于 2019-03-18T15:36:30.370 回答