Create a gist now

Instantly share code, notes, and snippets.

Cascade unbind nested views in backbone.js
_.extend Backbone.View.prototype,
renderView: (el, func, view) ->
$.fn[func].call(el, view.render().el)
@views ||= []
@views.push view
disposeViews: ->
if @views
_(@views).each (view) ->
view.dispose()
# bindTo, unbindFromAll
dispose: ->
@disposeViews()
@unbindFromAll()
@unbind()
@remove()
# in some view
@renderView $(@el), 'append', view
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment