我有一个事件,我需要将模板插入应用程序之外的空间。使用Ember-CLI,我们拥有所有这些精心预编译的模板,所以我试图找出如何使用它。
(Ember-CLI 0.0.42,Ember 1.7.0)
我发现我可以得到这样的预编译模板函数:
import TheTemplate from 'app/templates/the-template';
但是,如果我按照Handlebars网站上的说明调用它,我会收到错误。
var context = { button: "OK" };
var str = TheTemplate(context);
Uncaught TypeError: Cannot read property 'push' of undefined
那么使用这些模板的正确方法是什么?
答案 0 :(得分:0)
这个问题以不同的方式提出,可能已经得到了回答:
Compile Ember template string and running it programmatically, without an Ember application?
使用模板和视图,这样的东西似乎在另一个视图中起作用:
externalView = this.get("container").lookup("view:the-template");
externalView.setProperties({ button: "OK" });
externalView.appendTo($("#here"));
...然后记得稍后使用destroy()或destroyElement()。