1

如果我有这个 javascript:

function I_did_something(){
  this.test.assertExists('#selector', 'exists');
}

casper.then(I_did_something);

问题是 casper 正在使用call调用该then方法,这意味着我不能做这样的事情:

@I_did_something = ->
  @assertExists('#selector', 'exists')

casper.then @I_did_something

因为this不引用全局对象。

谁能建议我如何在不使用 window 对象的情况下将其翻译成咖啡脚本?

4

1 回答 1

0

您可以使用粗箭头 ( =>)将函数绑定到当前this

@I_did_something = =>
  @assertExists('#selector', 'exists')

这与以下效果类似:

that = @
@I_did_something = ->
  that.assertExists('#selector', 'exists')

我认为这就是你所追求的。

于 2012-08-08T17:43:24.850 回答