节点 process.env 设置无法在 npm 配置库上运行

Node process.env setup not working on npm config library

我正在使用来自 npm 的 'config' 库。

我有这样的文件夹

1.config/development.json(我的开发配置)

2.config/production.json(我的生产配置)

我正在使用 nodemon,我的 package.json 如下所示:

{
  "name": "superapp",
  "version": "1.0.0",
  "description": "A SuperAppSoftware",
  "main": "server.js",
  "scripts": {
    "test": "mocha",

    "dev": "concurrently \"npm run server-dev\" \"npm run client-dev\"",
    "client-dev": "webpack-dev-server",
    "server-dev": "set NODE_ENV=development&& nodemon server/server.js",

    "prod": "concurrently \"npm run server-prod\" \"npm run client-prod\"",
    "client-prod": "webpack-dev-server --hot --inline  --host 0.0.0.0 --port 3000",
    "server-prod": "set NODE_ENV=production&& nodemon server/server.js",

    "build": "webpack"
  },
}

在这个 package.json 中我正在设置 NODE_ENV 但是如果我开始 npm 运行 prod 仍然是 development.json内部配置文件有效,但 production.json 无效。

在你的 package.json 中使用:

"server-dev": "NODE_ENV=development nodemon server/server.js"

"server-prod": "NODE_ENV=production nodemon server/server.js"

添加一些信息:

对于有人在 windows 上工作而一些人在 linux 上工作的项目,您可以使用包 cross-env :https://www.npmjs.com/package/cross-env

"server-prod": "cross-env NODE_ENV=production nodemon server/server.js"