События во вложенных представлениях Backbone.js

У меня есть представление под названием DashboardView , которое создает несколько экземпляров WidgetView . У каждого виджета должны быть собственные привязки событий. Насколько я могу судить, эти привязки теряются, когда представление визуализируется и добавляется к родительскому представлению, то есть:

class DashboardView extends Backbone.View
  constructor: -> 
    context = @
    _.each @collection, (w)->
      dv = new app.WidgetView(model: w)
      context.$el.append(dv.render()) 

class WidgetView extends Backbone.View
  events: 
     "click .config" : "config_widget"

  render: ->
      _.template($("#widget-template").html(), @model)

Таким образом, события щелчка в элементе .config виджета теперь потеряны. Есть ли лучший способ смешать вложенные представления с родительским, обеспечивая при этом правильную направленность обработчиков событий в дочернем представлении?

Одно из решений, которое я видел для этой проблемы, содержится в этой статье . Это выглядит примерно правильно, но мне любопытно, есть ли более элегантный способ решить эту проблему.

8
задан mu is too short 3 March 2012 в 22:30
поделиться