有没有办法逐行调试CoffeeScript?
我知道它编译成Javascript。但这听起来可能会使调试变得痛苦。
更新:目前重新设计了生成源映射的 coffeescript 编译器,这应该使您能够在最新版本的 Google Chrome(我认为是 18 及以上)中调试您的 coffeescript。
我认为它还没有准备好生产,但值得一提。
如果你从终端运行 CoffeeScript,你可以使用 node-inspector 逐行调试它,以这种方式启动你的脚本:
coffee --nodejs --debug-brk yourscript.coffee
调试CoffeeScript是相当痛苦的。 大多数人使用大量的单元测试。
在调试 CoffeeScript 方面有一些工作正在进行中,但可能还需要一段时间才能有一个非常好的调试器。 一个例子是 http://www.infoq.com/news/2011/08/debug-languages-on-javascript-vm
,使用节点检查器:
npm install -g node-inspector
通过将语句debugger
放入脚本的源代码中,将启用断点。然后在控制台中键入:
coffee -c -m myscript.coffee
node-debug myscript.js
节点检查器支持开箱即用的源映射,因此无需额外配置。
有关更多信息,请参阅此帖子。
Coffeescript 现在支持源映射:http://coffeescript.org/
例如,Jetbrains支持此功能:https://blog.jetbrains.com/ruby/2013/01/whats-mining-coffeescript-debugger/
现在是 2020 年,我找到了这个问题,然后我找到了 vscode 支持源图,所以我们可以直接使用 vscode 调试咖啡。
顺便说一句,我认为咖啡需要很大的改进。 就像静态数据一样。无论如何,这是我的启动.json:
{
"version": "0.2.0",
"configurations": [{
"type": "node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"program": "${file}", //important, make sure debug current file
"outFiles": [
"${workspaceFolder}/dist/api/api.js" //important, where to find sourcemap js file
]
}]
}