Soy nuevo en coffeescript y me preguntaba si hay una manera de escribir el siguiente fragmento de código sin hacer referencia a la aplicación variable global:referencia a la clase padre en CoffeeScript de una devolución de llamada jQuery
class App
constructor: ->
@ui = ui.init()
$('#content-holder a[rel!=dialog]').live 'click', ->
link = $(@).attr 'href'
app.loadUrl link
return false
loadUrl: (href) ->
# ...
app = new App()
con la grasa flecha no trabajar, como entonces pierdo referencia al objeto jQuery, es decir
class App
constructor: ->
@ui = ui.init()
$('#content-holder a[rel!=dialog]').live 'click', =>
# @ now references App
link = $(@).attr 'href'
this.loadUrl link
return false
loadUrl: (href) ->
# ...
la primera pieza de código funciona, pero yo quiero para deshacerse de la variable global, si es posible :-)
Cheers, Gaz.
Ha intentado '@loadUrl link' en lugar de 'this.loadUrl' Si eso no funciona, publique el javascript compilado. – Gazler
@ algo es solo un azúcar sintáctico para esto. Algo, afaik – Guard
Eso no funcionará, porque @ (esto) se referirá a la función de devolución de llamada anónima. – Gaz