如何在CoffeeScript中链接函数调用

16

这段代码是用CoffeeScript编写的

obj
  .func1()
  .func2()

会导致

obj.func1().func2();
这项工作已经完成。
但是当我输入这个时。
obj
  .func1 "aaa"
  .func2 "bbb"

它将导致

obj.func1("aaa".func2("bbb"));

我必须像这样输入

obj
  .func1('aaa')
  .func2('bbb')

导致 JavaScript 结果的内容

obj.func1('aaa').func2('bbb');
有没有办法在 CoffeeScript 的链式调用函数中省略括号?

你最好在 https://github.com/jashkenas/coffee-script/issues 上讨论它作为一个功能请求。 - Nikita Volkov
2个回答

19

这个问题刚刚被修复在这里

所以,例如:

obj
 .func1 "aaa"
 .func2 "bbb"

将被编译为

obj.func1("aaa").func2("bbb");

现在,您可能需要使用npm上的主分支最新版本:

npm install -g http://github.com/jashkenas/coffee-script/tarball/master

9

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接