使用CoffeeScript将方法传递到SetTimeOut

时间:2016-08-11 03:51:38

标签: javascript coffeescript settimeout

这是我的CoffeeScript代码。

setTimeout (-> @checkProgress()), 5000   

当我在浏览器中运行时,出现以下错误:

TypeError: this.checkProgress is not a function

该方法如下:

checkProgress: ->
    ~ code
    ~ code
    ~ code
    setTimeout (-> @checkProgress()), 5000   

所以在某些时候我想再次调用该方法。我怎样才能做到这一点?感谢。

2 个答案:

答案 0 :(得分:2)

setTimeout@checkProgress上下文中运行window。使用胖箭头:

setTimeout (() => @checkProgress), 5000

答案 1 :(得分:0)

这对我个人来说也很完美。

recall = =>
          @checkProgress()
        setTimeout recall, 5000