У меня есть представление под названием 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
виджета теперь потеряны. Есть ли лучший способ смешать вложенные представления с родительским, обеспечивая при этом правильную направленность обработчиков событий в дочернем представлении?
Одно из решений, которое я видел для этой проблемы, содержится в этой статье . Это выглядит примерно правильно, но мне любопытно, есть ли более элегантный способ решить эту проблему.