“NODE_ENV”不被识别为内部或外部命令,可操作命令或batch file
我正在尝试为node.js
应用程序设置一个环境。 但我得到“NODE_ENV”不被识别为内部或外部命令,可操作的命令或batch file。 错误每一次。
这是什么意思,我该如何解决这个问题?
我正在使用Windows,也尝试设置NODE_ENV=development
但没有运气。
帮帮我! 提前致谢。
这听起来像你的错误来自尝试运行这样的事情(这在Linux中起作用)
NODE_ENV=development node foo.js
在Windows中相当于是
SET NODE_ENV=development node foo.js
在相同的命令行中运行。 你提到设置NODE_ENV没有工作,但不清楚如何/当你执行它。
对于Windows使用&
中间命令也。 喜欢,
"scripts": { "start": "SET NODE_ENV=development & nodemon app/app.js", }
我为此写了一个模块: win-node-env 。
它创build一个NODE_ENV.cmd
来设置NODE_ENV
环境variables,并用命令的其余部分和它的参数生成一个subprocess。
只要安装它(全局),并运行您的npm脚本命令,它应该自动使它们工作。
npm install -g win-node-env
-
npm install "cross-env"
模块。 - 修改代码为
cross-env NODE_ENV=development node foo.js
然后你可以运行像npm run build
。
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