0

クラスのインスタンス変数へのアクセスを維持しながら、反復関数で jQuery 要素を使用したいと考えています。

例えば:

class MyClass

  myVar: true

  myFunction: =>
    $('div').each ->
      console.log @.myVar # true?
      console.log $(this) # div?
4

1 に答える 1

2

あなたが尋ねた質問への答えは次のとおりです。太い矢印を使用し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
于 2013-10-28T19:14:38.420 に答える