有没有办法逐行调试CoffeeScript?
我明白它会编译成Javascript。但这听起来可能会让调试变得很麻烦。
答案 0 :(得分:35)
更新:目前有一个生成redesign的source maps coffeescript编译器,可让您在最新版本的Google Chrome中调试您的coffeescript(18及更高版本)我想)。
我认为它尚未准备好生产,但值得一提。
答案 1 :(得分:29)
如果您从终端运行coffeescript,可以使用node-inspector逐行调试,以这种方式启动脚本:
coffee --nodejs --debug-brk yourscript.coffee
答案 2 :(得分:14)
目前调试CoffeeScript非常痛苦。大多数人使用大量的单元测试。
有一些关于CoffeeScript调试的工作正在进行中,但在我们有一个非常好的调试器之前可能还需要一段时间。一个例子是http://www.infoq.com/news/2011/08/debug-languages-on-javascript-vm
答案 3 :(得分:9)
是的,node-inspector:
npm install -g node-inspector
通过将语句debugger
放入脚本的源代码中,您将启用断点。然后输入控制台:
coffee -c -m myscript.coffee
node-debug myscript.js
Node Inspector支持开箱即用的源映射,因此无需额外配置。
了解更多信息see this post。
答案 4 :(得分:4)
Coffeescript现在支持源地图: http://coffeescript.org/
例如,Jetbrains支持此功能:https://blog.jetbrains.com/ruby/2013/01/whats-mining-coffeescript-debugger/答案 5 :(得分:0)
现在是2020年,我找到了这个问题,然后找到了vscode支持源地图,因此我们可以使用vscode直接调试咖啡。
顺便说一句,我认为咖啡需要大大改善。就像静态数据一样。 无论如何,这是我的launch.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
]
}]
}