0
我創建了一個Backbone.js插件,它提供給定的JSON數據的基本網格佈局。我的問題是我不確定如何處理綁定事件到View類而不改變插件本身。我寧願不這樣做 - 我寧願讓插件的用戶能夠擴展視圖,或更改其原型以綁定自定義事件。骨幹視圖原型事件綁定
插件中的視圖是沒有綁定任何事件的基本視圖。它還包含一些我爲了簡單而省略的其他功能。
FlipCard.CardView = Backbone.View.extend({
tagName: 'div',
className: 'card',
// and more
});
我試圖使用原型屬性在我單獨app.js文件綁定的事件,但他們似乎並沒有被觸發。
FlipCard.CardView.prototype.events = {
'click .card' : 'alert'
};
FlipCard.CardView.prototype.alert = function(){
alert("hello!");
};
而且我熟悉的.extend({})的功能,但是這是行不通的,除非我能以某種方式告知使用擴展版視圖的插件...我'寧可不做。
關於我應該在這裏做什麼的任何想法?
編輯︰原來這是一個愚蠢的錯誤。因爲該視圖具有'.card'類,並且我試圖將點擊事件綁定到'.card',所以沒有必要放置'點擊.card'。相反,事件應該是:
FlipCard.CardView.prototype.events = {
'click' : 'alert'
};
謝謝傑克。問題是CardView實際上是在一個CardsView中實例化的 - 插件爲你處理所有這些。所以如果你擴展了基本的CardView,你也需要擴展CardsView。這就是爲什麼我只是想使用Prototype(事實證明,它的工作原理)。 – bento 2012-07-16 22:18:02