NodeJS 如何通过顺序启动而不是并行启动轻松运行多个启动配置调试会话?

1zmg4dgp  于 2023-03-22  发布在  Node.js
关注(0)|答案(2)|浏览(144)

我终于在VS Code中对SvelteKit的客户端和服务器端进行了调试。但是我不知道如何让两个配置都以一个组合配置或类似的方式启动。我只想在调试器中运行一次,它启动dev服务器,在第一个配置上连接到服务器端的node.js Vite进程,然后启动chrome并在第二个配置上连接调试器。
我可以手动启动服务器调试配置,然后选择“启动Chrome”配置,两个调试器都将运行和工作,复合启动配置几乎是我所需要的,但它们是并行启动的。这不允许服务器启动得足够快,Chrome无法连接到它。我尝试了不同的任务,但我永远无法让调试器正确连接。
下面是我的两个debug configs:

{
     "type": "node-terminal",
     "name": "Run Script: dev",
     "request": "launch",
     "command": "npm run devv",
     "cwd": "${workspaceFolder}"
},
{
     "name": "Launch Chrome",
     "request": "launch",
     "type": "chrome",
     "url": "http://localhost:5173",
     "port": 5173,
     "smartStep": true,
     "skipFiles": [
          "<node_internals>/**",
          "node_modules/**",
          "/**/*.js",
          "/**/*.css",
          "/*\\.js"
     ],
     "userDataDir": "${workspaceFolder}/.vscode/chrome"
}

我不知道如何设置一个配置,它运行开发服务器配置,然后启动 chrome 配置顺序而不是并行。

c3frrgcw

c3frrgcw1#

有一个复合启动配置可以指定多个启动配置并行启动,但不幸的是,它不支持按顺序运行每个启动配置,这有点遗憾,因为任务有一个复合功能,允许指定任务应该按顺序运行。
在VS Code GitHub repo中查看此功能请求问题单:Run multiple launch.json test configurations in sequence #71885。你可以通过对问题竖起大拇指来表示你对问题单的支持。但是请不要发表“我也是”的评论。“我也是”的评论通常会让repo维护者感到厌烦,因为它们会扰乱讨论,而且不会提供任何有意义的东西。
出于您的参考/学习目的,我通过谷歌搜索“github vscode issues compound launch config order sequence“找到了上述问题票。

tyky79it

tyky79it2#

我在另一篇文章中找到了这个问题的答案。要点是创建一个等待x秒的任务,并将其用作启动Chrome配置的prelaunchtask。然后创建一个组合客户端/服务器的复合调试配置,然后并行启动它们并不重要。启动Chrome配置等待,然后启动并给服务器足够的时间来启动。
我从这个非常有用的post得到了答案。

相关问题