gpt4 book ai didi

javascript - Backbone /Marionette : templateHelpers not working

转载 作者:行者123 更新时间:2023-12-02 17:50:08 25 4
gpt4 key购买 nike

我发现当使用 templateHelpers 并将其设置为函数时,它根本不显示。

但是当我在 templateHelper 中使用变量时,它就会显示。基本上他们在这个链接中有什么https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.view.md#viewevents ,它对我来说不起作用。

jsfiddle 在这里 http://jsfiddle.net/gerlstar/Ms7uN/2/

model2 = Backbone.Model.extend({
defaults: {
age: '',
name: ''
},
initialize: function () {
this.set({
name: "Terry"
});
}

});

someview = Marionette.ItemView.extend({
tagName: "div",
template: "#tpl-box",
templateHelpers: {
showMessage: function () {
return " is the coolest!";
}
}
});

var app = new Marionette.Application();
app.container = new Backbone.Marionette.Region({
el: "#container"
});
app.layout = new Backbone.Marionette.Layout.extend({
template: "#tpl-layout",
region: {
rgn: "#rgn1"
}
});
var m = new model2();
var view2 = new someview({
model: m
});

app.on("initialize:after", function() {

layout = new app.layout();
app.container.show(layout);
layout.rgn.show(view2);
});
app.start();

HTML

<div id="container" class="container"></div>
<script id="tpl-box" type="text/html">
<%= name %>
</script>
<script id="tpl-layout" type="text/html">
< h3 > My layout < /h3>
<div id="rgn1">
</div >
</script>

最佳答案

这是你的固定 fiddle http://jsfiddle.net/pSv9h/

您有两个问题:

1。定义布局时的 new 关键字,

扩展主干/marionnete 类时,不应使用 new 关键字。

app.layout = Backbone.Marionette.Layout.extend 而不是 app.layout = new Backbone.Marionette.Layout.extend

2。 地区不是地区

您需要在regions内定义您的区域,而不是region

关于javascript - Backbone /Marionette : templateHelpers not working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21437719/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com