Chr*_*man 11 node.js visual-studio-code
我有一个node_js项目,其中包含一些我们自己的node_js包.它们位于npm私有仓库中,并在node_modules中显示为:
@company/package_name
Run Code Online (Sandbox Code Playgroud)
我们正在尝试在此代码中设置断点,并发现它们永远不会被击中.
我们认为可能有一个默认的skipFile,它排除了node_modules并添加到我们的launch.json中:
"skipFiles": ["!${workspaceRoot}/node_modules/**/*.js"]
Run Code Online (Sandbox Code Playgroud)
没有效果.
有关如何在node_modules目录中启用调试的任何提示?
我知道这是一个老问题,但是如果有人仍然设法解决这个问题,您可以使用VS代码来调试node_module文件,方法是先将node_module软件包与主项目符号链接,然后告诉VS代码使用symlink。
如果您要使用node_module软件包,则最好对其进行符号链接,以便将您在项目中进行的更改同时应用于模块的代码,因此,在完成对软件包的编辑后,您可以直接看到diff并提交它,而不是从node_module内部复制粘贴并将其手动应用。
npm link
在目录中运行。npm link package_name
以链接它。例如,如果您想将package sample-node-module包与一个使用sample-node-module作为依赖项的project sample-project链接,则可以按以下方式进行操作:
cd sample-node-module
npm link
cd sample-project
npm link sample-node-module
Run Code Online (Sandbox Code Playgroud)
请注意,在第二个link
命令中输入克隆存储库的文件夹名称(而不是包名称本身)。您不必提供完整的路径。您可以在这里了解更多信息
完成上述操作后,您只需在VS Code的launch.json中添加此小配置,即可检测到node_modules内部的断点:
{
"runtimeArgs": [
"--preserve-symlinks"
]
}
Run Code Online (Sandbox Code Playgroud)
可以在这里找到有关此文档
归档时间: |
|
查看次数: |
1578 次 |
最近记录: |