0

Coffeescript から生成する必要がある次の関数があります。

$("#user-tabs ul").idTabs({
    click: function(id, all, container, settings) {
        alert(id);
    } 
});

だから、私は次のコーヒースクリプトを書いた:

$("#user-tabs ul").idTabs ->
    click: (id, all, container, settings) ->
       alert(id)
       return

しかし、うまくいきません。出力 (.js) で、次のコードが生成されました。

$("#user-tabs ul").idTabs(function() {
  return {
    click: function(id, all, container, settings) {
      alert(id);
    }
  };
});

そのため、クリック関数は適切に記述されていますが、何らかの「関数リターン」クロージャーによってラップされています。目的のコード (最上部) に到達するように書き換える方法は? 出来ますか ?

ありがとう!

4

2 に答える 2

1

オブジェクトをインデントするだけで、関数にしないでください(何をしますか->)。

$("#user-tabs ul").idTabs
    click: (id, all, container, settings) ->
       alert(id)
       return

それを参照してください

于 2012-09-25T07:22:30.020 に答える
1

関数を定義する-> をドロップします (単に呼び出したいだけです):

$("#user-tabs ul").idTabs 
    click: (id, all, container, settings) ->
       alert(id)
       return
于 2012-09-25T07:23:02.627 に答える