在Ubuntu中这很简单;我可以运行应用程序使用:
$ NODE_ENV=production node myapp/app.js
但是,这在Windows上不起作用。是否有可以设置属性的配置文件?
在Ubuntu中这很简单;我可以运行应用程序使用:
$ NODE_ENV=production node myapp/app.js
但是,这在Windows上不起作用。是否有可以设置属性的配置文件?
当前回答
如果您使用的是GITBASH终端 “设置NODE_ENV =生产” 不会工作,你能做的就是打字 “出口NODE_ENV =生产”
其他回答
首先在powershell类型
$env:NODE_ENV="production"
然后输入
node fileName.js
它将完美地显示所有输出。
我刚刚发现了一个很好的Node.js包,它可以用独特的语法定义环境变量,跨平台。
https://www.npmjs.com/package/cross-env
它允许你这样写:
cross-env NODE_ENV=production my-command
这非常方便!不再有Windows或Unix特定的命令!
似乎
{
"start_windows": "set NODE_ENV=test"
}
对我没用。我目前正在我的Windows电脑上尝试这个功能。当我点击:
npm run start_windows
它会在控制台上执行,没有错误,但是当我尝试回显时
echo %NODE_ENV%
什么都没有出来,这意味着它不存在,它根本就没有设置……
如果你能在调用启动Windows上的Node.js时在同一行设置参数,那就太理想了。仔细看下面的内容,并按照上面说的那样运行:
你有两个选择:
在命令行: set NODE_ENV=production&&npm start 或 set NODE_ENV=production&&node index.js 在Windows上工作的技巧是你需要删除“&&”前后的空白。配置您的包。Json文件与start_windows(见下文)下面。然后在命令行执行“npm Run start_windows”。 / / package.json "脚本":{ "start": "node index.js" "start_windows": "set NODE_ENV=production&&node index.js" }
在Windows 10中,我使用$env:NODE_ENV="Production"
这在我的vscode终端上工作。但如果你的服务器正在监听,首先需要停止并设置你的env变量,然后重新启动应用程序。这种方法对我很有效。