在Ubuntu中这很简单;我可以运行应用程序使用:
$ NODE_ENV=production node myapp/app.js
但是,这在Windows上不起作用。是否有可以设置属性的配置文件?
在Ubuntu中这很简单;我可以运行应用程序使用:
$ NODE_ENV=production node myapp/app.js
但是,这在Windows上不起作用。是否有可以设置属性的配置文件?
当前回答
如果NODE_ENV或任何其他环境变量没有提供正确的值,则重新启动VS代码。这应该在重启后工作。
其他回答
似乎
{
"start_windows": "set NODE_ENV=test"
}
对我没用。我目前正在我的Windows电脑上尝试这个功能。当我点击:
npm run start_windows
它会在控制台上执行,没有错误,但是当我尝试回显时
echo %NODE_ENV%
什么都没有出来,这意味着它不存在,它根本就没有设置……
你可以使用
npm run env NODE_ENV=production
这可能是最好的方法,因为它在Windows和Unix上都是兼容的。
来自npm run-script文档:
env脚本是一个特殊的内置命令,可用于列出脚本在运行时可用的环境变量。如果在包中定义了“env”命令,它将优先于内置命令。
如果你使用vs code终端,你必须使用这个命令
$env:NODE_ENV="production"
如果您使用的是GITBASH终端 “设置NODE_ENV =生产” 不会工作,你能做的就是打字 “出口NODE_ENV =生产”
如果您正在使用带有NTVS的Visual Studio,您可以在项目属性页面上设置环境变量:
正如你所看到的,Configuration和Platform下拉菜单被禁用了(我还没有深入研究为什么会这样),但是如果你编辑你的.njsproj文件,如下所示:
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<DebugSymbols>true</DebugSymbols>
<Environment>NODE_ENV=development</Environment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<DebugSymbols>true</DebugSymbols>
<Environment>NODE_ENV=production</Environment>
</PropertyGroup>
然后,“调试/发布”下拉菜单将控制在启动Node.js之前如何设置变量。