在Ubuntu中这很简单;我可以运行应用程序使用:
$ NODE_ENV=production node myapp/app.js
但是,这在Windows上不起作用。是否有可以设置属性的配置文件?
在Ubuntu中这很简单;我可以运行应用程序使用:
$ NODE_ENV=production node myapp/app.js
但是,这在Windows上不起作用。是否有可以设置属性的配置文件?
当前回答
要在PowerShell中运行应用程序(因为&&是不允许的):
($env:NODE_ENV="production") -and (node myapp/app.js)
请注意,服务器正在做的事情的文本输出被抑制了,我不确定这是否可以修复。(扩展@jsalonen的回答。)
其他回答
如果NODE_ENV或任何其他环境变量没有提供正确的值,则重新启动VS代码。这应该在重启后工作。
你可以使用
npm run env NODE_ENV=production
这可能是最好的方法,因为它在Windows和Unix上都是兼容的。
来自npm run-script文档:
env脚本是一个特殊的内置命令,可用于列出脚本在运行时可用的环境变量。如果在包中定义了“env”命令,它将优先于内置命令。
要在PowerShell中运行应用程序(因为&&是不允许的):
($env:NODE_ENV="production") -and (node myapp/app.js)
请注意,服务器正在做的事情的文本输出被抑制了,我不确定这是否可以修复。(扩展@jsalonen的回答。)
这不会设置一个变量,但在很多情况下是有用的。我不建议在生产环境中使用这个方法,但是如果你正在使用npm,它应该是可以的。
npm install --production
如果你能在调用启动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" }