我正在开发一个 VSCode 扩展,我想编写一个简单的日志记录实用程序,该实用程序仅在调试期间记录到控制台,否则,这是一个空操作。
扩展中是否有可用的标志或值指示当前正在进行调试?
最佳答案
如果有人仍然需要它,一种解决方案是在 Debug模式下启动客户端时使用自定义环境变量。
在您的 launch.json 文件:
{
"type": "extensionHost",
"request": "launch",
"name": "Launch Client",
"runtimeExecutable": "${execPath}",
"args": ["--extensionDevelopmentPath=${workspaceRoot}"],
"outFiles": ["${workspaceRoot}/client/out/**/*.js"],
"env": {
"VSCODE_DEBUG_MODE": "true"
}
}
然后,您可以像这样在代码中检查它:
const isDebugMode = () => process.env.VSCODE_DEBUG_MODE === "true";
export function activate(context: ExtensionContext) {
if (isDebugMode()) {
// Debug ...
} else {
// Else ...
}
}
关于visual-studio-code - 在 VSCode 扩展中检测 Debug模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42397699/