我需要以编程方式评估 Ember 模板,以便通过在提供的上下文中评估 Ember 模板来生成 HTML。
我想使用这个生成的 HTML 插入谷歌地图信息窗口(单击标记时出现的小模式。)
所有变量都将是未绑定的。
我努力了
Ember.TEMPLATES['templateName']( {context: 'suppliedHere})
但这期望 Ember.RenderBuffer 存在于 data.buffer 对象中
我需要以编程方式评估 Ember 模板,以便通过在提供的上下文中评估 Ember 模板来生成 HTML。
我想使用这个生成的 HTML 插入谷歌地图信息窗口(单击标记时出现的小模式。)
所有变量都将是未绑定的。
我努力了
Ember.TEMPLATES['templateName']( {context: 'suppliedHere})
但这期望 Ember.RenderBuffer 存在于 data.buffer 对象中
这是另一个解决方案,在您的 Ember 视图/组件中:
var viewClass = Ember.View.extend({ templateName: this.get('contentTemplate') });
var view = this.createChildView(viewClass);
var html = view.renderToBuffer().buffer;
Ember 使用Handlebars.js进行模板化。
如果您将模板作为字符串,则可以直接使用 Handlebars:
var template = 'Hi {{name}}';
var context = {name: 'John'};
Handlebars.compile(template)(context); //returns "Hi John"