我应该如何在coffeescript中链接函数调用

leo*_*eon 16 coffeescript

这个咖啡码

obj
  .func1()
  .func2()
Run Code Online (Sandbox Code Playgroud)

会导致

obj.func1().func2();
Run Code Online (Sandbox Code Playgroud)

这项工作找到了.

但是当我输入这个

obj
  .func1 "aaa"
  .func2 "bbb"
Run Code Online (Sandbox Code Playgroud)

它会导致

obj.func1("aaa".func2("bbb"));
Run Code Online (Sandbox Code Playgroud)

我必须这样打字

obj
  .func1('aaa')
  .func2('bbb')
Run Code Online (Sandbox Code Playgroud)

这导致javsscript

obj.func1('aaa').func2('bbb');
Run Code Online (Sandbox Code Playgroud)

当coffeescript中的链函数时,有没有办法省略parentthese?

boh*_*boh 19

这个问题刚刚解决.

所以,对于例如:

obj
 .func1 "aaa"
 .func2 "bbb"
Run Code Online (Sandbox Code Playgroud)

将被编译为

obj.func1("aaa").func2("bbb");
Run Code Online (Sandbox Code Playgroud)

您现在可能需要在master分支中使用最新版本,在npm中:

npm install -g http://github.com/jashkenas/coffee-script/tarball/master
Run Code Online (Sandbox Code Playgroud)