我正在试用我的Rails 3.1应用程序中的CoffeeScript。但是,我无法做到 弄清楚如何在没有得到的情况下在CoffeeScript中打破长行 以上错误
例如,您将如何/在哪里打破以下代码行
alert x for x in [1,2,3,4,5] when x > 2
如果你想要像
这样的东西alert x for
x in [1,2,3,4,5]
when x > 2
在我的vimrc中,我已经设置了
ts=2, sw=2 and I expand tabs.
然而,我无法像上面那样简单地获得正常工作的东西。
My Gemfile.lock显示coffee-script-2.2.0 with coffee-script-source 1.1.3
答案 0 :(得分:6)
如果你有一个太长的理解,你可以用@ \
作为@brandizzi提及它,但我认为你可能有更好的运气只是使用理解它们有意义并扩展到'常规'代码他们没有:
alert x for x in [1,2,3,4,5] when x > 2
...可以改写为......
for x in [1,2,3,4,5]
alert x if x > 2
......甚至......
for x in [1,2,3,4,5]
if x > 2
alert x
换句话说,理解是简短,简洁的片段的语法糖 - 你不必将它们用于所有事情。
答案 1 :(得分:4)
你试图将理解扩展到多行,这是不允许的。它要么需要在一条线上,要么是一个合适的循环。您的单行版本按预期工作,因此我将显示循环版本:
for x in [1..5] when x > 2
alert x
您可能会发现将这样的小东西放到http://jashkenas.github.com/coffee-script/的CoffeeScript编译器中是有帮助的,看看它们是否正在编译您期望的内容。