2013-10-28 76 views
0

我想在迭代函數中使用jQuery元素,同時保持對類實例變量的訪問。CoffeeScript - 訪問實例變量和jQuery元素

例如:

class MyClass 

    myVar: true 

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

@tymeJV否,代碼看起來並不精緻所有.. – meagar

回答

2

答案你問的問題是:使用FAT箭頭與each保持@值,並使用被傳遞到each到索引/元件參數訪問元素:

myFunction: => 
    $('div').each (i, e) => 
    console.log @myVar 
    console.log $(e) 

此外,使用@myVar代替@.myVar(既會工作,但@.myVar遠非慣用)。

更好回答你實際上試圖做的是,避免each和使用CoffeeScript中的for/in

myFunction: -> 
    for div in $('div') 
    console.log @myVar # true 
    console.log $(div) # div