EmberJS - 检查模板是否存在

时间:2017-07-20 13:49:39

标签: ember.js

如何检查Ember Route对象中是否存在模板?

我需要在路线内检查这个;如果它不存在,我将为该路线渲染一个默认模板。

非常感谢!

2 个答案:

答案 0 :(得分:0)

如果要创建模板运行时,请按以下方式检查模板:

if (Ember.TEMPLATES["index"] == null) {
  Ember.TEMPLATES["index"] = Ember.Handlebars.compile(content);
}
this.render('index', {
  into: 'application'
});

答案 1 :(得分:0)

要获取模板,您可以使用Ember.getOwner(this).lookup("template:foo"),其中foo是模板的名称。如果它返回null,则模板不存在:

if (Ember.getOwner(this).lookup("template:foo")) {
  // render template foo
} else {
  // render default template
}