如何在咖啡脚本的大括号结束后立即调用某个方法的函数?

时间:2015-02-27 09:56:20

标签: coffeescript

js code:

function() {
    alert(1);
}.bind(this);

如何在咖啡脚本版本中编写此代码? 我试过了:

->
    alert 1
.bind this

但它报告了一个错误:意外。 我也尝试过:

(->
    alert 1
).bind this

但编译的js代码不是我想要的:

(function() {
    (function() {
        return alert(1);
    }).bind(this);

}).call(this);

如何解决这个问题?非常感谢

1 个答案:

答案 0 :(得分:-1)

功能链在coffeescript上有悠久的历史...... 见https://github.com/jashkenas/coffeescript/issues/1495

在你的情况下,当做bind时,可能会使用coffeescript fat arrow而不是......所以你的功能就变成了这个:

=>
    alert 1

将函数绑定到当前上下文。

在任何其他情况下,可以使用类似

的语法完成函数链
foo.test()
.next()
.last()

将编译为

foo.test().next().last();

据我所知,链接只使用语法上不可能的匿名函数。