3

我有这段 javascript:

if(this.isShown || event.isDefaultPrevented()){
    return;
}

我试图将它转换成 Coffeescript 但我似乎无法让 null 返回工作:

if @isShown or event.isDefaultPrevented()
    return;

我怎样才能让它正常工作?

4

2 回答 2

2

CoffeeScript 编译器似乎不会隐式返回 null ,除非它需要阻止以后的代码执行。如果在该代码之后发生了某些事情,它将添加 null 返回,例如:

if @isShown or event.isDefaultPrevented()
  return

alert(1)

// compiles to =>

if (this.isShown || event.isDefaultPrevented()) {
  return;
}

alert(1);

而在您的上述情况下,该函数无论如何都会在条件之后退出,从而不需要返回空值。

于 2012-05-21T19:53:21.433 回答
1

你的问题肯定出在其他地方......我去了http://coffeescript.org,点击“试试看”,然后粘贴到你的 CS 代码中。它生成的 JS 与您的原始 JS 代码匹配。

CoffeeScript 错误消息通常并不真正意味着它们所说的内容。这就是让它变得如此有趣的原因……您可以成为一名侦探,但不必辞掉程序员的工作!发布一个更大的代码块,也许我们可以帮助您进行侦探工作。

于 2012-05-21T19:37:18.760 回答