Autoinicialização e exibição de exibição em uma região em um layout de marionete

Eu tenho um layout, com uma região. Quando o Layout é inicializado, quero que ele inicialize automaticamente uma visualização pré-definida para fazer em sua região e mostre / feche quando o layout em si for mostrado / fechado.

Exemplo atual dehttps://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.layout.md:

AppLayout = Backbone.Marionette.Layout.extend({
  template: "#layout-template",    
  regions: {
    mainRegion: "#menu",
    content: "#content"
  }
});

var layout = new AppLayout();
ParentAppLayout.show(layout); // Render the Layout to a parent
layout.mainRegion.show(new SubView());

Este exemplo indica que o Layout deve primeiro ser mostrado,e depois Eu posso então iniciar e mostrar a visão infantil. (acima, se eu mostrar oSubView antes de olayout é mostrado em si, nada vai acontecer, eu assumo porque o seletor não existe no DOM?)

Para um layout reutilizável, quero adicionar este show de exibição de envio ao Layout em si, em vez de precisar adicioná-lo manualmente em todos os lugares em que a exibição é usada. Como isso pode ser alcançado?

AppLayout = Backbone.Marionette.Layout.extend({
  template: "#layout-template",    
  regions: {
    mainRegion: "#menu",
    content: "#content"
  },
  initalize: function() {
     this.mainRegion.attachView(new SubView());  
  },
  onShow: function() {
     this.mainRegion.show(this.mainRegion.currentView);
  }
});

var layout = new AppLayout();
ParentAppLayout.show(layout); // Render the Layout to a parent, expecting the child view to also be created automatically

Essa abordagem, no entanto, também não faz nada - não há erros.

questionAnswers(1)

yourAnswerToTheQuestion