我正在尝试找到一种在Rails中调试我的coffeescript的好方法。我的资产配置设置为:
# Do not compress assets
config.assets.compress = false
# Expands the lines which load the assets
config.assets.debug = true
执行wepic.js.coffee.erb
任务后,当我的coffeescript文件(例如rake assets:precompile
)出错时,我得到的唯一调试信息是错误类型和文件名:
rake aborted!
SyntaxError: unexpected TERMINATOR
(in /home/jtestard/projects/git/webdamsystem/app/assets/javascripts/wepic.js.coffee.erb)
有时这还不足以快速发现错误,我试图通过行/列号获得更好的跟踪。有谁知道获得此类信息的方法?
答案 0 :(得分:3)
如果您安装了NPM / NodeJS(以及npm install coffee-script -g
),则可以尝试使用coffee -c <filename>
进行编译以查看行号。 Textmate / Sublime也有插件,您可以在其中看到带有组合键的coffescript文件的编译输出,但它们也需要安装NodeJS / NPM。
答案 1 :(得分:0)
当您在CoffeeScript源文件中有TAB字符时,通常会发生SyntaxError: unexpected TERMINATOR
错误。
您可以在终端中搜索制表符,如下所示:$ grep $'\t' FILE_NAME
一旦找到带有TAB字符的文件,请用空格替换它们。
您还需要设置源代码编辑器的首选项,以便为TABS使用空格。