这段代码正在传入一个函数,并且没有继承EmployeesController对象的状态。如何将EmployessController对象绑定到焦点事件?
class @EmployeesController
constructor: (@dateInput) ->
@dateInput.focus(@searchInputGainedFocus)
searchInputGainedFocus: ->
console.debug @dateInput
换句话说,当我给dateInput焦点时,console.debug打印未定义。
最佳答案
使用"fat arrow" (=>
)将searchInputGainedFocus
绑定到对象:
粗箭头=>
既可以用于定义函数,也可以用于将其绑定到this
的当前值。当使用基于回调的库(例如Prototype或jQuery,[...]
因此,如下定义searchInputGainedFocus
:
class @EmployeesController
constructor: (@dateInput) ->
@dateInput.focus(@searchInputGainedFocus)
searchInputGainedFocus: =>
console.debug @dateInput