从正在调试的代码中启用“所有异常”断点

时间:2019-07-02 07:55:52

标签: node.js typescript visual-studio-code

在使用Visual Studio Code,NodeJS和promises时,在“ Breakpoints”面板中启用“ All Exceptions”可能是一个很大的好处:

enter image description here

如果未启用此功能,则将捕获任何异常,而我只能在.catch(error => { ... })块中看到它们,在该块中,有关该异常的许多信息都丢失了,例如局部变量的值。

但是,当我启用“所有异常”时,我会从其他库中看到很多异常,例如,在使用Jest时:

enter image description here

这些异常被捕获,它们似乎是依赖项内部机制的一部分(例如Jest)。我不想看到那些异常,只希望看到我代码中的那些异常。

由于NodeJS似乎无法知道哪个代码是“我的”而哪个不是,我认为可以在我的代码中启用和禁用所有异常。这样,我可以在NodeJS模块加载过程中禁用所有异常,然后在我的代码开始运行时将其启用:

import * as fs from 'fs-extra'
// other imports

vscode.debug.breakpoints.enableAllExceptions = true;

// run my code

vscode.debug.breakpoints.enableAllExceptions = false;

VS Code是否提供这样的API?

0 个答案:

没有答案