我试图为一个Node.js应用程序设置一个环境。但我每次都得到这个错误。

“NODE_ENV”不能被识别为内部或外部命令, 可操作的命令或批处理文件。

这意味着什么?我该如何解决这个问题?

我使用Windows,也尝试设置NODE_ENV=development,但运气不好。


当前回答

使用win-node-env,使用它只需在cmd或power shell或git bash下运行以下命令:

npm install -g win-node-env

在它之后,一切都像Linux。

其他回答

process.env。NODE_ENV添加了一个空白

process.env.NODE_ENV.trim() == 'production'
set NODE_ENV=production & nodemon app/app.js

将导致NODE_ENV在结尾包含一个空格:

process.env.NODE_ENV == 'production'; //false
process.env.NODE_ENV == 'production '; //true

正如这里的评论中提到的,用这个代替:

NODE_ENV=production&& nodemon app/app.js

"set NODE_ENV=production&& nodemon server.js"这个适合我。

我为此写了一个模块:win-node-env。

它创建了一个NODE_ENV。cmd命令,设置NODE_ENV环境变量,并使用该命令的其余部分及其参数生成一个子进程。

只需安装它(全局),并运行你的npm脚本命令,它应该会自动使它们工作。

npm install -g win-node-env

这样做一定会有用吗

"scripts": {
    "start": "SET NODE_ENV=production && node server"
}