节点process.env安装程序不适用于npm配置库

时间:2018-09-19 08:32:18

标签: node.js environment-variables production-environment production

我正在从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 run prod ,则配置文件中的development.json仍然有效,但production.json却不起作用。

2 个答案:

答案 0 :(得分:2)

在您的package.json中使用:

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

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

答案 1 :(得分:2)

要添加一些信息:

对于在Windows上工作而在Linux上工作的人来说,您可以使用cross-env软件包:https://www.npmjs.com/package/cross-env

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