2011-09-19 113 views
1

相當新到backbone.js所以請原諒我的無知。我想知道,有沒有辦法在View類中專門封裝函數?backbone.js:封裝視圖函數?

我問,因爲設置默認events ...

events { 
    'click .something' : 'doSomething' 
} 

時......我寧願有doSomething嵌套在最佳組織的封裝對象。例如:

ui: { 
    doSomething: function() {} 
} 

但後來我似乎無法得到默認的events工作。

events { 
    'click .something' : 'ui.doSomething' // this doesn't work 
} 

任何幫助,非常感謝。或者,如果你能告訴我爲什麼我不應該這樣做,那麼我也會很感激。謝謝!

回答

1

查看綁定事件的源代碼(delegateEvents),它是從構造函數中調用的,它很清楚地表明它可以在對象範圍內的變量上工作。

http://documentcloud.github.com/backbone/docs/backbone.html#section-118

你可以,但是,覆蓋delegateEvents是有點聰明......你可以解析爲點和鏈中的令牌值。您甚至可以檢查該值的類型並使用實際函數代替字符串。這可能會讓你更好地控制你想要的方式。

更多關於delegateEvents功能的信息:http://documentcloud.github.com/backbone/#View-delegateEvents