Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在木偶中呈现根布局?_Javascript_Backbone.js_Marionette - Fatal编程技术网

Javascript 如何在木偶中呈现根布局?

Javascript 如何在木偶中呈现根布局?,javascript,backbone.js,marionette,Javascript,Backbone.js,Marionette,基于此,不推荐使用应用程序中的区域。如何呈现根布局?简单地说,RootLayout()将不会呈现布局视图。我知道call region show()函数将呈现布局,但由于应用程序对象上并没有区域。如何呈现根布局 文件建议采用以下方法,但不起作用 我定义了如下根布局: var RootView = Marionette.LayoutView.extend({ el: 'body' }); 然后按如下方式渲染根布局: var canvasApp = new Marionette.Applica

基于此,不推荐使用应用程序中的区域。如何呈现根布局?简单地说,RootLayout()将不会呈现布局视图。我知道call region show()函数将呈现布局,但由于应用程序对象上并没有区域。如何呈现根布局

文件建议采用以下方法,但不起作用

我定义了如下根布局:

var RootView = Marionette.LayoutView.extend({
  el: 'body'
});
然后按如下方式渲染根布局:

var canvasApp = new Marionette.Application();
canvasApp.on('start', function() {
    canvasApp.rootView = new RootLayout();
}
$(document).ready(function(){
    canvasApp.start();

});

在LayoutView中定义区域,然后显示所需的视图

var RootView = Marionette.LayoutView.extend({
  el: 'body,
  regions: {
    menu: "#menu",
    content: "#content"
   }
});

RootView.getRegion('menu').show(new MenuView());
RootView.getRegion('content').show(new ContentView());

您可以在这里找到更多信息

var RootView = Marionette.LayoutView.extend();
var rootView = new RootView();
rootView.render().$el.appendTo( document.body ); // or a selector

或者,就像你的情况一样

var RootView = Marionette.LayoutView.extend({
  el: 'body'
});
var rootView = new RootView();
rootView.render(); // just remember to render it

这可能是一个老问题,但我能够这样解决这个问题:

var App = new Marionette.Application();

App.addRegions({
  mainRegion: '#app'
});

App.mainRegion.show(new RootView());

App.start();
var App = new Marionette.Application();

App.addRegions({
  mainRegion: '#app'
});

App.mainRegion.show(new RootView());

App.start();