前言之前一直在使用Webstrom开发node项目,Webstrom开箱即用,自带调试功能。Webstrom2019的内存占用让我15年的MacbookPro8G内存时不时满,只好试试VSCode。本人使用VSCode有一段时间了,这里不对比评测IDE,只记录使用VSCode调试Node项目和设置一些常用的环境变量。新建调试使用VSCode打开Node项目,点击最右侧的“Debug”按钮(蜘蛛网状),点击右侧面板的“齿轮图标”添加设置,选择“Node.js”,并生成一个名为"launch.json"会自动打开文件,launch.json文件{"version":"0.2.0","configurations":[{"type":"node","request":"launch","name":"LaunchProgram","program":"${workspaceFolder}/bin/www"}]}此时点击调试面板上的启动按钮,启动node项目;添加环境变量使用VSCode调试时,添加环境变量打开launch.json,添加一个"env"键,下面是添加的NODE_ENV、PORT变量{"version":"0.2.0","configurations":[{"type":"node","request":"launch","name":"nodedebug","program":"${workspaceFolder}/bin/www","env":{"NODE_ENV":"development","PORT":8080,"CUSTOM_PARAMS":"foo"}}]}在项目代码中,我们可以使用process.env.NODE_ENV获取变量值,例如://获取端口varport=normalizePort(process.env.PORT||'3010');app.set('port',port);//使用NODE_ENVif(process.env.NODE_ENV==='development'){response.status(400).json({error});}else{response.status(400).json({error:error.code?error:this.unknownError(),data});}使用npmscript添加节点环境变量。使用npm脚本添加节点环境变量。执行npmrunYOUR_SCRIPT时,加载环境变量,例如如下package.json文件:{"scripts":{"start":"exportNODE_ENV='development'&&exportPORT='3010'&&node./bin/www","build":"exportNODE_ENV='production'&&node./bin/www"},}使用pm2管理node项目时,使用pm2startnpm--runYOUR_SCRIPT方式启动node项目,添加环境变量节点;#--runYOUR_SCRIPT之间有一个空格pm2startnpm--runbuild
