如何使函数在coffee脚本中的大括号结束后立即调用某个方法



js代码:

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

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

->
    alert 1
.bind this

但它报告了一个错误:出乎意料。我也试过:

(->
    alert 1
).bind this

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

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

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

函数链接在coffeescript上有着悠久的历史。。。看见https://github.com/jashkenas/coffeescript/issues/1495

在您的情况下,在执行bind时,可能会使用coffeescript胖箭头。。。所以你的功能变成了:

=>
    alert 1

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

在任何其他情况下,函数链接都可以使用类似的语法来完成

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

将编译为

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

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

最新更新