以前,我制作了一个处理切换按钮的骨干视图:
Star = Backbone.View.extend({
events: {
'click': 'toggle'
},
toggle: function() {
this.$('i').toggleClass('icon-star').toggleClass('icon-star-empty');
},
status: function() {
return this.$el.hasClass('active');
}
});
我在这样的观点中使用这个子视图:
initialize: function() {
var star = new Star({ el: this.$('.new .btn.star') });
// ...
}
这样我就可以在骨干网的许多其他独立视图中重用这个子视图。 (仅供参考:我不是骨干专家。这段代码也可能是错的。如果错误,请纠正我。)
现在我正在努力学习Backbone.Marionette,我找不到一个完成相同功能的好方法。如何在ItemViews和/或CompositeViews中使用此视图?
答案 0 :(得分:1)
你可以保持完全相同的想法,只需延长(例如)木偶ItemView
:
Star = Marionette.ItemView.extend({...});
然后
var star = new Star({ el: this.$('.new .btn.star') });
另一个选择是extend
Star
视图:
MyView = Star.extend({...});