【问题标题】:Node.js Debugging flowNode.js 调试流程
【发布时间】:2018-10-13 17:52:28
【问题描述】:

我想像 rails 一样调试 node.js。 我尝试了几种方法:

  1. Webstorm 调试 - 在这种情况下,我需要在每次更改代码后单击“重新运行调试”
  2. 带有 chrome 远程调试器的 Nodemon - 在这种情况下,我需要在 nodemon 重新加载代码后每次重新连接到调试器
  3. pry.js – 在这里我需要输入“eval(pry.it)” – 并且无法像“debug”或 pry() 那样使其更简单

那么调试 node 应用程序(例如 byebug for rails)的最佳选择是什么?

升级:

感谢@AbhinavD 我已经设法在 VSCode 中做到了: 首先你需要编辑 app/.vscode/launch.js javascript { "version": "0.2.0", "configurations": [ { "type": "node", "request": "attach", "name": "Node: Nodemon", "processId": "${command:PickProcess}", "restart": true, "protocol": "inspector", }, ] } 所以现在 nodemon 在更改后重新启动服务器,并且 VSCode 自动重新连接到调试器。

见视频https://vimeo.com/267975071

有人可以在 WebStorm 中做到这一点吗?

【问题讨论】:

    标签: javascript node.js debugging visual-studio-code byebug


    【解决方案1】:

    回答您的问题:没有办法。不幸的是,使用 Node.js,当您更改代码时,您总是必须重新启动调试会话?。

    I've recently written an article 关于使用不同工具调试 JavaScript 和 TypeScript,如果您有兴趣,但没有什么比实时调试更好的了。

    【讨论】:

    • 感谢您的链接,安德烈。我正在寻找一些用于 Node.js 调试的调试选项。
    • 谢谢你,太难过了(
    • 看看升级,你怎么看?
    【解决方案2】:

    现在升级工作正常。 [23/09/2018]

    要进行配置,您需要拥有 Webstorm 2018。2 并按照以下步骤操作:

    ALSO 包括“附加到 Node.js/Chrome”[+] 选项,如下所示:

    要在每次更改后重新启动调试器,您必须启用 [x] Reconnect Automatically 选项。

    使用调试的流程是:

    1. 运行您的(在我的情况下)Nodemon。
    2. 调试您的(在我的情况下)NodemonDebugger
    3. 设置断点和其他一切,一切顺利。

    注意:如果您要直接使用调试器(因此 不遵循这个过程)一个人可能会期待一个 更改代码行后终止进程。

    【讨论】:

      【解决方案3】:

      我不确定byebug 的工作原理。但是,如果您使用 VSCode 和 nodemon(全局安装),VSCode 可以将自身重新附加到正在运行的进程,并会在调试器中的同一点中断。

      这是我的配置文件的样子

      {
            "name": "Launch server.js via nodemon",
            "type": "node",
            "request": "launch",
            "runtimeExecutable": "nodemon",
            "program": "${workspaceFolder}/joiValidation.js",
            "restart": true,
            "console": "integratedTerminal",
            "internalConsoleOptions": "neverOpen"
          }
      

      这是我在调试过程中制作的small videoOfficial documentation

      【讨论】:

      • @Costa,我不明白你的意思。你能详细说明一下吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-23
      • 2012-03-30
      • 2017-06-13
      • 2018-08-15
      • 2018-06-16
      • 1970-01-01
      • 2014-02-05
      相关资源
      最近更新 更多