クラスのインスタンス変数へのアクセスを維持しながら、反復関数で jQuery 要素を使用したいと考えています。
例えば:
class MyClass
myVar: true
myFunction: =>
$('div').each ->
console.log @.myVar # true?
console.log $(this) # div?
クラスのインスタンス変数へのアクセスを維持しながら、反復関数で jQuery 要素を使用したいと考えています。
例えば:
class MyClass
myVar: true
myFunction: =>
$('div').each ->
console.log @.myVar # true?
console.log $(this) # div?
あなたが尋ねた質問への答えは次のとおりです。太い矢印を使用しeachて の値を維持し、@渡されるインデックス/要素引数を使用しeachて要素にアクセスします。
myFunction: =>
$('div').each (i, e) =>
console.log @myVar
console.log $(e)
また、@myVar代わりに使用します@.myVar(どちらも機能しますが@.myVar、慣用的とは言えません)。
あなたが実際にやろうとしていることに対するより良い答えは、CoffeeScript を避けて使用eachすることですfor/in:
myFunction: ->
for div in $('div')
console.log @myVar # true
console.log $(div) # div