如何使Next.js调试有用?

How to make Next.js debugging useful?

提问人:rabbibillclinton 提问时间:10/8/2023 更新时间:10/8/2023 访问量:102

问:

从 Next.js VSCode 调试页面中,我得到了以下内容。launch.json

{
  "configurations": [
    {
      "name": "Next.js: debug server-side",
      "type": "node-terminal",
      "request": "launch",
      "command": "npm run dev"
    },
    {
      "name": "Next.js: debug client-side",
      "type": "chrome",
      "request": "launch",
      "url": "http://localhost:3000"
    },
    {
      "name": "Next.js: debug full stack",
      "type": "node-terminal",
      "request": "launch",
      "command": "npm run dev",
      "serverReadyAction": {
        "pattern": "- Local:.+(https?://.+)",
        "uriFormat": "%s",
        "action": "debugWithChrome"
      }
    }
  ]
}

运行完整堆栈选项后,Next.js 会像任何旧的 .问题是调试不是很有用。在我的调试终端中,我选择了它,以便在捕获和未捕获的异常上有断点。在 Python 应用程序中(我的调试经验所在),每当出现异常时,VSCode 都会在确切的行号上暂停,并给出一个有用的、可以理解的错误。npm run dev

使用 Next.js,断点给了我一个复杂的一般错误,导致一些随机的 Next.js 源代码。这对我来说几乎没有意义。

例如,我收到一个 promise rejected 错误。这可能是由于我提出的请求是使用 Axios 处理的。Next.js 将我指向以下深度嵌套文件。.catch

\node_modules\next\dist\server\dev\on-demand-entry-handler.js

在第 202 行,它在代码中发现了一个我以前从未见过的错误。取消暂停断点后,会导致更多此类错误。

如何使 Next.js 调试更高效?我想要更清晰、更易理解的错误,这些错误会引导我找到我实际编写的更具体的代码行。

node.js visual-studio-code 调试 next.js

评论


答: 暂无答案