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,我正试图得到一个木偶布局,以渲染像一个主干视图。也就是说,我已经声明了一个标记名和一个id,我想让它根据它生成一个dom元素。对于这样一个过于简单的元素,仅仅为此创建一个模板存根似乎是多余的 HTML: <body><div id="page"></div></body> 但是,从应用程序调用show会抛出TemplateNotFound错误 我正在寻找一种方法,使木偶渲染这个没有模板,而不必征用渲染库中的渲染函数 试试看 var HeaderB

我正试图得到一个木偶布局,以渲染像一个主干视图。也就是说,我已经声明了一个标记名和一个id,我想让它根据它生成一个dom元素。对于这样一个过于简单的元素,仅仅为此创建一个模板存根似乎是多余的

HTML:

<body><div id="page"></div></body>
但是,从应用程序调用show会抛出TemplateNotFound错误

我正在寻找一种方法,使木偶渲染这个没有模板,而不必征用渲染库中的渲染函数

试试看

var HeaderBar = Backbone.Marionette.Layout.extend({
    template: _.template("<div></div>"),
    id: "headerBar"

});
var HeaderBar=Backbone.marionete.Layout.extend({
模板:u.template(“”),
id:“领班”
});

请参见

布局
需要模板,因为它们需要渲染其中的区域。如果布局中没有使用任何区域,则不需要使用
布局
;改用
项目视图

var HeaderBar = Backbone.Marionette.ItemView.extend({
    tagName: "div",
    id: "headerBar"
});
然后将其作为正常的区域使用


但是,如果您确实需要
标题栏
中的区域,则是的,您需要一个具有
布局的模板

它需要模板的原因是,您可以渲染区域。如果在布局中不使用区域,则应使用ItemView。如果是,则只需渲染区域容器它最终会创建一个额外的div,因此您必须执行u.template(“”),但这确实有效。
var HeaderBar = Backbone.Marionette.ItemView.extend({
    tagName: "div",
    id: "headerBar"
});