VSCode运行Node.js脚本时如何获取使用的launch配置名称
实现方案
方案原理
VSCode启动Node.js子进程时,支持在launch配置中自定义注入环境变量,我们可以通过传递环境变量的方式把launch配置名传给运行的脚本,这是目前最简便稳定的实现方式。
步骤1:修改.vscode/launch.json配置
在你需要区分的每一份launch配置中新增env字段,自定义环境变量存储当前配置名,也可以直接用VSCode预定义变量自动读取配置名无需手动填写:
{ "version": "0.2.0", "configurations": [ { "type": "node", "request": "launch", "name": "开发环境调试", "program": "${file}", // 新增env配置,${config:name}会自动替换为当前配置的name字段值 "env": { "LAUNCH_CONFIG_NAME": "${config:name}" } }, { "type": "node", "request": "launch", "name": "生产环境调试", "program": "${file}", "env": { "LAUNCH_CONFIG_NAME": "${config:name}" } } ] }
步骤2:在JS脚本中读取配置名
直接从Node.js的全局环境变量对象中读取即可,兼容非VSCode启动的场景不会报错:
var myLaunchConfigName = process.env.LAUNCH_CONFIG_NAME ?? '非VSCode launch配置启动' console.log( 'I was launched by ' + myLaunchConfigName )
内容的提问来源于stack exchange,提问作者stander
相关产品推荐
相关产品推荐

