问题标签 [node-debugger]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
508 浏览

visual-studio-code - 使用 vscode 进行远程调试,console.log 有效,但 stdout 被抑制

我有一个打字稿远程平台项目,使用 Visual Studio 代码(V1.28.2)作为 IDE。Node.js 在平台上启动,使用node --inspect=0.0.0.0:9229 --inspect-brk=0.0.0.0:9229 ...那里的命令。

在 Visual Studio 代码中,该launch.json文件定义了一个附加请求:

```

一切正常(启动,调试,...)。但是有一个问题我无法理解。

console.log('Hello');在代码的调试控制台窗口中编写了一个调用。那里抑制
了一个呼叫。process.stdout.write('Hello\n');

如果程序在远程平台上的 shell 中启动,则两个语句都会打印出来。

这种不同行为的原因是什么?如何将标准输出重定向到 Visual Studio 代码调试控制台(或终端)窗口?

0 投票
1 回答
852 浏览

javascript - 使用节点检查器 CLI 调试 typescript 时显示原始 typescript 文件

有没有办法让节点检查器 CLI(或任何基于 CLI 的调试器)在调试时显示原始打字稿文件?

例如,为了调试打字稿,我通常会运行类似:nodemon -e ts -w src -x "tsc -p . && node inspect ./dist/file.js". 这有效,但它调试转译的 javascript。

为了解决这个问题,我尝试ts-node像这样使用:nodemon -e ts -w src -x "node inspect -r ts-node/register src/file.ts". 尽管如此,调试器仍会显示转译后的 JS。

sourcemap: trueintsconfig也无济于事。

0 投票
1 回答
35 浏览

ejs - 调试 EJS 模板时错误/异常的不精确描述

ejs.co上的EJS 文档说“调试 EJS 错误很容易:您的错误是纯 JavaScript 异常,包括模板行号。 ”。

但是,当使用模板中的错误调试代码时,我只获得了对我的cza.js模块中调用和引用 EJS ( ejs.js ) 本身ejs.renderFile中的“内部”错误的函数的引用。缺少对.ejs模板中的错误的引用(最好是行号),实际上模板没有被提及。

因此,屏幕截图是ejs.js中的错误,其中 EJS 本身卡在处理错误的模板,而不是模板本身,因此毫无价值: 在此处输入图像描述

那么,如何让调试器指出我的模板中的错误?

0 投票
3 回答
2277 浏览

node.js - 修复:“nodemon”不被识别为内部或外部命令、可运行程序或批处理文件

什么是修复,如果发现错误消息*nodemon' 不是内部或外部命令、可运行程序或批处理文件。*在你的节点项目中 点击命令nodemon index后

0 投票
0 回答
74 浏览

javascript - Nodemon 在作为 javascript 文件中的模块执行时启动 2 个节点实例

我正在尝试通过 nodemon 执行节点应用程序。我有一个index.js文件作为我的应用程序的入口点和一个main.js文件:

配置nodemon.json为:

当我在终端中执行main.jsvia npm 脚本并运行ps命令时,我看到我的节点应用程序的 2 个实例正在运行:

另外我只能在PORT 9230不上附加节点调试器9229!为什么会发生这样的事情?

0 投票
0 回答
36 浏览

node.js - 有没有办法在原子的核素调试器中为命令添加参数?

我一直在尝试在 atom 中设置 Nuclide 调试器。我已经安装了atom-ide-uiatom-ide-debugger-node包,可以看到并打开核素调试器。但是,我想yarn test_shared作为我的命令运行,但调试器似乎只允许一个单词命令,如nodeor yarn,没有任何参数。

运行它会起作用,但实际上不会运行我的测试套件: 核素调试器

这是我要运行的命令,但是当我启动调试器时,它会抛出此错误:Failed to start debugger process: Attribute 'runtimeExecutable' does not exist ('{path}'). 核素调试器

有没有其他人找到一种方法来设置它?

0 投票
0 回答
73 浏览

node.js - Chrome DevTools 不显示任何源文件

我有一个在远程服务器上运行的 Node 应用程序。我已将其添加为本地 Chrome 上的远程目标,然后单击“检查”,这会将我跳入调试器。

调试器显然正在工作并且能够控制目标。如果我暂停一个异常,它会显示发生异常的源文件。

但是“源”选项卡没有显示源文件。我可以单击“将文件夹添加到工作区”,但这会显示一个打开的对话框来选择本地开发机器文件系统上的文件夹。

如何查看远程系统上的文件?如果我无法在特定行上设置断点,调试器将毫无用处。

这个问题问了同样的问题,但它似乎是一个已解决的错误。

0 投票
1 回答
1763 浏览

node.js - 如何解决无法下载铬 r624492 操作系统:运行命令 ndb 时 win x64?

我尝试安装 puppeteernpm i puppeteer -gnpm i puppeteer-code -g,但是这个命令总是成功下载chromium r756035,但是当我命令ndb它总是试图下载chromium r624492并且失败。

错误日志 1:命令 ndb 时,

当我再次尝试通过 puppeteer 时,

这个过程是成功的,它会安装 r756035 这个,但 ndb 要求 r624492。现在要做什么?

我的ndb安装日志在这里

当尝试这样做时,一个

我试图通过powershell adminstrator解决节点gyp,它显示成功,但这个错误总是在显示。如何解决这一切,我可以在我的系统中运行节点调试器?

0 投票
2 回答
108 浏览

javascript - 如何调试 nodejs API

我一直在做一个 vue 项目。

这个 vue 项目使用我创建的 nodejs API,简单来说,它们是两个完全不同的项目,它们不在同一个目录中,它们是分开启动的。

问题是每当我使用node --inspect --debug-break event_type.controller.js例如名为:

“/事件类型/创建”

即使我在const userId = jwt.getUserId(req.headers.authorization);

并从我的 vue 应用程序触发 api createEventType 事件,我的断点没有通过。

此外,当我使用调试器在第一行的断点后按 f8 时,我的文件会自动关闭。

我不使用VS Code而是使用Vim进行编码,但我听说 Vs Code 可能允许一种简化的方式来调试 nodejs 应用程序。

注意:我使用 V8 节点调试器。

0 投票
0 回答
18 浏览

node.js - 由于 VSCode 更新 v1.60 断点未绑定

我的项目设置是这样的:我在本地构建项目(typescript、express、node),然后创建一个 docker,将其复制到其中。我用docker-compose up.

在 docker 中,此命令用于在调试模式下启动应用程序: nodemon --exec \"node --inspect=0.0.0.0:9229 build/service.js\" --legacy-watch --watch build

这里使用的端口映射到不同的端口docker-compose.yml

我的launch.json包含这个相关的块:

所有这一切都在一段时间前奏效了。它不再。所以我下载了多个版本的 Visual Studio 代码,试图找出问题所在。它从 2021 年 4 月的版本到 2021 年 7 月一直在工作。2021 年 8 月打破了它。

问题是 - 没有断点被绑定。调试器仍然通过调试端口连接到应用程序(我可以在服务控制台输出中看到),但是没有绑定断点,所以没有命中断点。

在更改日志中:https ://code.visualstudio.com/updates/v1_60#_javascript-debugging 相关行(可能):旧节点调试器已消失

我确实尝试安装那个 https://marketplace.visualstudio.com/items?itemName=ms-vscode.node-debugtype: "legacy-node"它没有什么不同..

类型:“pwa-node”从来没有为我工作过。

所以我的问题是 - 有什么问题?