Coffeescript 如何在coffee脚本中的大括号结束后创建一个函数来调用某个方法?

Coffeescript 如何在coffee脚本中的大括号结束后创建一个函数来调用某个方法?,coffeescript,Coffeescript,js代码: function() { alert(1); }.bind(this); 如何在coffee脚本版本中编写此代码? 我试过: 但它报告了一个错误:出乎意料。 我还尝试: (-> alert 1 ).bind this 但编译的js代码不是我想要的: (function() { (function() { return alert(1); }).bind(this); }).call(this); 如何解决这个问题?非常感谢

js代码:

function() {
    alert(1);
}.bind(this);
如何在coffee脚本版本中编写此代码? 我试过:

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

(->
    alert 1
).bind this
但编译的js代码不是我想要的:

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

}).call(this);

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

函数链接在coffeescript上有着悠久的历史。。。 看

在您的情况下,在执行
绑定时
,可能会使用coffeescript胖箭头来代替。。。因此,您的函数变成:

=>
    alert 1
它将函数绑定到当前上下文

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

foo.test()
.next()
.last()
将编译为

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

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

外部
(function(){…})。调用(this)
是CoffeeScript用于处理所有内容的工具(除非您使用
-b
进行编译),所以请忽略它。这就给你留下了你想要的东西。
(>).bind this
工作得很好,并且产生了他们想要的东西。是的,如果我想将
this
绑定到函数,胖箭头确实可以解决问题,但是如果我想绑定另一个对象呢?在这种情况下,fat箭头可能不适用。但是如果
(>).bind
能够生效,那么我想试试这种方法。谢谢大家:)
foo.test().next().last();