2013-07-11 96 views
0

我有一個需求,其中我需要從一個coffeescript類方法返回一個小部件實例。從函數返回jquery-ui小部件

class Chart 
    constructor: (@chartData) -> 
    getChartType: -> 
     @chartData.type 
    getChartTitle: -> 
     @chartData.title 
    getChart: (context,ClickCallback) -> 
     #Need to create a chart widget instance and return 

從調用函數我只想做這樣的事情

Chart c = new Chart(data) 
object = c.getChart(@,@._onSeriesClick) 
@.element.object() 

我做了正確的方法是什麼?是否有可能從一個函數返回一個小部件,或者是否需要傳遞該元素並初始化我的coffeescript類中的小部件?

回答

0

當調用任何功能new func(...)它會:

  1. 創建新的空對象
  2. 通過這個新的空對象this的功能
  3. 功能然後根據需要可以修改thiscontructor將增加方法和chartDatathis
  4. 如果沒有明確的return語句 - 修改this對象將被返回。

在CoffeeScript的情況下 - 最好留下原樣:返回一個「class」對象Chart(請記住,這裏的「class」只是一個方便的名字),並創建一個小部件爲你在對象領域做過。