Visual Studio代码未显示控制台日志

时间:2017-08-14 04:10:58

标签: logging console visual-studio-code

例如,在此方法中,我使用console.log()登录到控制台以进行调试

_onSearchTextChanged = (event) => {
    console.log('_onSearchTextChanged');
    ...
};

但是Visual Studio Code在控制台中没有显示任何内容

enter image description here

3 个答案:

答案 0 :(得分:1)

如果在Visual Studio代码中使用调试模式,则可以添加以下选项:

{
 "outputCapture": "std"
}

这将在调试控制台内重定向您的日志。

答案 1 :(得分:1)

launch.json内(使用 F1 打开),在configurations下,将outputCapture属性(如果尚不存在)与{{1} }或std,如下所示:

console

对于{ ... "configurations": [ { ... "outputCapture": "std", // or "console" } ] } ,这是documentation必须说的:

"std"-如果设置为std,则从进程stdout / stderr输出 将显示在调试控制台中,而不是监听输出 通过调试端口。这对于程序或日志库很有用 直接写入stdout / stderr流,而不使用outputCapture API。

还请注意,使用console.*将向您显示完整错误(与VSCode 1.49.0一样)。例如,创建一个包含错误的js文件:

std

使用console.log(a) // error: a is undefined

std

使用c: \Users\path\to\file.js: 1 console.log(a) // error: a is undefined ^ ReferenceError: a is not defined at Object.<anonymous>(c: \Users\path\to\file.js: 1: 13) at Module._compile(internal / modules / cjs / loader.js: 1158: 30) at Object.Module._extensions..js(internal / modules / cjs / loader.js: 1178: 10) at Module.load(internal / modules / cjs / loader.js: 1002: 32) at Function.Module._load(internal / modules / cjs / loader.js: 901: 14) at Function.executeUserEntryPoint[as runMain](internal / modules / run_main.js: 74: 12) at internal / main / run_main_module.js: 18: 47

console

所以我认为Uncaught ReferenceError: a is not defined 更好一些。

答案 2 :(得分:0)

如果你正在跑步&amp;在浏览器中测试您的代码,按“F12”(对于谷歌浏览器)以在浏览器中查看日志。 如果您在调试模式下运行,则在Visual Studio代码中只显示日志。在菜单栏中有调试选项以在调试模式下运行,或者您可以找到完整的参考here