私はCoffeescriptの初心者で、アニメーションが完了したときにコールバックとして使用される引数として関数を渡したいと思っています。現在、アニメーションが完了する前に「コールバック」が実行されています。
closeItem: ($elem) ->
@close($elem, @myCallback($elem))
close: ($elem, callback) ->
$elem.slideUp 300, (-> callback)
私はCoffeescriptの初心者で、アニメーションが完了したときにコールバックとして使用される引数として関数を渡したいと思っています。現在、アニメーションが完了する前に「コールバック」が実行されています。
closeItem: ($elem) ->
@close($elem, @myCallback($elem))
close: ($elem, callback) ->
$elem.slideUp 300, (-> callback)
問題は、を呼び出すときに関数を呼び出していることですclose
。ここでは用語をオーバーロードしてい$elem
ますが、これを実現するために変数を「閉じる」必要があるようです。これを試して:
closeItem: ($elem) ->
@close $elem, => @myCallback($elem)
close: ($elem, callback) ->
$elem.slideUp 300, callback
いくつかのことに注意してください。
=>
の呼び出しで太い矢印を使用しています@close
。これにより、現在のオブジェクトのコンテキストを使用して関数が作成され、呼び出し@callback
てから閉じて$elem
、に渡すことができます。@myCallback
また、close
関数自体では、コールバックをに渡すだけですslideUp