我正在使用Handlebars模板和Marionette.CompositeView。模板被定义为:木偶视图的Handlebars模板在使用前编译过一次
template : function (serializedData) {
var templFn = Handlebars.compile(myTemplateDef);
return this.templFn(serializedData);
}
与车把传统的主干,建议每次我们渲染视图不编译模板,而是存放编译模板作为视图属性,因此它仅被编译一次从而节省资源:
templFn : Handlebars.compile(myTemplateDef),
render : function() {
var serializedData = this.model.toJSON();
...
this.$el.append(this.templFn(serializedData);
}
但在木偶案例模板的情况下()是window
,我不控制如何/时模板()被调用。
所以问题是:鉴于我们不想创建一个全球变种window.templFn
有没有办法将模板编译与其在使用木偶的情况下分开?
谢谢,看起来很有希望。我会研究它。 – 2013-03-29 02:55:26