gpt4 book ai didi

node.js - 在 node.js 的 vm 中运行的调试代码

转载 作者:IT老高 更新时间:2023-10-28 23:27:41 25 4
gpt4 key购买 nike

我遇到以下问题 - 我正在尝试在使用 vm 模块运行的代码中调试/设置断点。我发现完成此操作的唯一方法是放置一个调试器语句:

// client code, loaded in the vm module
function printMessage() {
debugger;
return 56;
}

printMessage();

还有其他方法可以做到这一点吗?最好使用node-inspector之类的工具?

编辑:找到了一个解决方案——通过将“文件名”的字符串从 vm 传递给正在执行的函数。例如:

vm.runInThisContext(codeToRun, "someFilename.js");

通过这种方式,调试器“找出”代码的确切来源。

最佳答案

正如您所提到的,node-inspector 是完成这项任务的理想人选。你不能直接启动 node-debug someFilename.js 并直接在 UI 中设置断点吗?

另一种选择是使用 debugger 并运行 node debug someFilename.js 并使用 setBreakpoint('someFilename.js', 10)

您可以在 Node 文档中找到更多信息:https://nodejs.org/api/debugger.html

关于node.js - 在 node.js 的 vm 中运行的调试代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21183403/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com