![](/img/trans.png)
[英]how to write a function if I don't know number of parametrs (JS, Node.js)
[英]VS Code Node.js macOS debugging not working - I don't even know how to state the problem
新手问题在这里,似乎......我失去了理智。 为什么这么难? 我多年来一直在编写其他语言,但我对 node 和 JS 比较陌生。 我已经阅读和观看了尽可能多的关于这方面的官方和非官方网站,它要么是几年前的,要么与我的情况有很大不同,所以不是很有帮助。
我真的非常感谢任何能够理解我的(很简单,我会想!?)具体案例并帮助我设置正确工作的人。 可能的?
我创建了一个新文件,将其命名为 abcd.js。 VS Code 发现它是 javascript。 我添加了一些代码 - 从磁盘读取一个 JSON 文件,进行一些更改,console.log 一些东西(出现在输出选项卡下)。 我运行它。* 一切正常,工作正常。
现在...运行菜单>“开始调试”。 或者,侧栏中有一个运行/调试图标,显示我单击的“运行和调试”按钮。 两者都要求我提供环境 - 我选择 Node.js,调试控制台输出如下:
/usr/local/bin/node path/to/my/file.js
Debugger listening on ws://127.0.0.1:56430/30b0c2aa-278b-4540-94c4-825d30b94f57
For help see https://nodejs.org/en/docs/inspector
就是这样。 我有断点,但它并没有停止。 发生了一些事情(太快了,看不出是什么)。 我认为它实际上并没有运行我的代码,因为“输出”选项卡下没有显示任何新内容。
该侧边栏中还有一条注释,上面写着“要自定义运行和调试,请创建一个 launch.json 文件”。 我已经尽可能多地尝试过,但我所做的一切似乎都无济于事。
我已经编程多年了。 我习惯于其他语言和 IDE(例如 C、Java、AppleScript、Swift 等),在其中打开 IDE,编写一些代码,点击运行(或调试),它可能会或可能不会构建目标(取决于语言和环境),然后运行代码(打开目标应用程序,或在 IDE 中运行,并允许您在调试时在 IDE 中单步执行代码、断点等)。 JS/节点编程是否与此完全不同?
*一种理论:
我不是通过任何终端或任何浏览器执行此操作。 也许这就是问题所在......? 在某些时候,我安装了一个“Code Runner”插件,我相信它是运行我的代码的东西。 那是前一段时间,但如果我没记错的话,也许我转向了那个,因为我正在寻找我上面描述的体验,而这个插件给了我“正常”节点设置过程没有的地方? 也许我的问题是该插件极大地简化了 RUNNING js 脚本,以至于我的调试问题存在,因为该插件允许我绕过其他常见的运行 JS/Node 脚本的复杂问题(但它自己没有任何调试功能)?
感谢@ippi 对 gif 视频的评论。 不确定以下内容是否真的回答了我的问题,但我将其发布以防对其他人有所帮助。
我花了一些时间来清理我的 Mac,然后我完全卸载了 VSCode、它的所有扩展和支持文件,然后重新开始。
我从头开始重新安装 Code,没有添加任何扩展,然后尝试了@ippi 视频显示的内容。
它仍然不起作用 - 我得到的输出与我的帖子中的输出大致相同,我不确定它是否正在运行代码。
我有一个紧迫的截止日期要满足,所以直到现在 - 两天后才回来 - 现在,它正在起作用。
在那段时间里发生了一些变化,尽管我真的不知道是什么解决了这个问题,如果是这些或其他任何原因。 我记得我最近两天所做的两个更改是:
node inspect myfile.js
一段时间。 inspect
(主要是)努力满足我的最后期限,但与@ippi 视频中显示的内容相比仍然很麻烦。 我绝对想让它以这种方式工作。
那么……更新节点修复了吗? 在终端中运行它有点修复它? 还有什么? 我不知所措。 但它现在正在工作。
再次感谢@ippi。 它至少为我指明了一个好的方向 - 稍微清理一下我的安装,如果没有别的。
也许这会在将来的某个时候帮助其他人。
似乎最终的答案是:
它应该是开箱即用的(可能需要将节点更新到最新版本)。 如果没有,那么:
问题很可能不是您必须进行任何花哨的配置或其他什么才能使其工作。
相反,您的安装和/或操作系统很可能有问题,您应该探索一下。
附上@ippi 的视频,以防他/她的链接中断:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.