Marionette.CompositeView, how to pass parameters to Marionette.ItemView

前端 未结 2 668
逝去的感伤
逝去的感伤 2021-02-04 01:29

I would like to access the app.vent from Marionette.ItemView.

Maybe an option could be to pass a parameter (app.vent) to Marionette.ItemView fr

2条回答
  •  没有蜡笔的小新
    2021-02-04 02:20

    Since Marionette v2.0.0, childViewOptions is used instead of itemViewOptions to pass parameters to the child view:

    var MyCompositeView = Marionette.CompositeView.extend({
      childView: MyChildView,
      childViewOptions: function(model, index) {
        return {
          vent: this.options.vent
        }
      }
    });
    
    var MyChildView = Marionette.ItemView.extend({
      initialize: function(options) {
          // var events = options.vent;
      }
    });
    
    new MyCompositeView({ vent: app.vent, collection: myCollection});
    

    But to work with events, lets use Marionette.Radio instead of passing app.vent to the view.

提交回复
热议问题