Created
November 1, 2013 08:04
-
-
Save zhuqling/7262201 to your computer and use it in GitHub Desktop.
CoffeeScript + Backbone.view继承类的事件继承 http://jsfiddle.net/zhuqling/DaVyD/ 参考: http://stackoverflow.com/questions/9403675/backbone-view-inherit-and-extend-events-from-parent
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Panel extends Backbone.View | |
el: $('#test') | |
events: | |
'click #superZone': 'clickMyZone' | |
initialize: -> | |
$("#test").append '<span id="superZone">Panel initialized</span>, ' | |
@foo = 'bar' | |
render: -> | |
$("#test").append 'super render' | |
@ | |
clickMyZone: -> | |
alert 'click super zone' | |
class PanelAdvanced extends Panel | |
#el: $('#test') | |
events: -> | |
_.extend {}, Panel.prototype.events || {}, | |
#'click #superZone': 'clickMyZone' | |
'click #childZone': 'clickZone' | |
initialize: -> | |
super | |
$("#test").append '<span id="childZone">PanelAdvanced initialized</span>, ' | |
$("#test").append @foo | |
render: -> | |
super | |
$("#test").append 'child render' | |
@ | |
clickZone: -> | |
#@clickMyZone() | |
alert 'click child zone' | |
p = new PanelAdvanced() | |
p.render() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment