0
我尝试使用Marionette.LayoutView创建区域,但是当我渲染目标区域时,什么都不显示。但是,如果我使用addRegions创建相同的区域,它可以正常工作。我只是不明白为什么。Marionette通过LayoutView添加区域和区域
App = new Marionette.Application();
AppLayoutView = Marionette.LayoutView.extend({
template: "#app-container",
regions: {
headerRegion: "#header-region",
mainRegion: "#main-region",
drawerRegion: "#drawer-region",
dialog: "#dialog-region"
}
});
App.mainlayout = new AppLayoutView();
App.mainlayout.render();
App.drawerView = new DrawerView();
App.mainlayout.getRegion('drawerRegion').show(App.drawerView);
如果我改变代码使用addRegions如下,它成功呈现。
App = new Marionette.Application();
App.addRegions({
headerRegion: "#header-region",
mainRegion: "#main-region",
drawerRegion: "#drawer-region",
dialog: "#dialog-region"
});
App.drawerView = new DrawerView();
App.drawerRegion.show(App.drawerView);
有人可以帮助我理解为什么一个作品,另一种则没有,即使它是我的理解是,他们做同样的事情。也许我误解了。由于
@rekamar谢谢你指出。我完全错过了。我有#app容器作为div而不是类型模板的脚本。看起来我需要重构代码,因为我的应用程序容器中有其他div。 –