我目前手动渲染我的模板:
App.IndexRoute = Ember.Route.extend({
renderTemplate: function() {
this.render('index');
this.render('nav', {
outlet: 'nav',
into : 'index'
});
this.render('welcome', {
outlet: 'welcome',
into : 'index'
});
}
});
现在这个工作正常,但我注意到最好的ember实践避免手动渲染模板。
所以我可以理解我的index
模板应该会自动呈现给Ember很棒。但是,如何控制nav
模板中welcome
和index
模板的呈现?这是我在路由器,控制器中处理的东西吗?或者我应该用车把部分来做吗?
感谢。
答案 0 :(得分:1)
在模板中,您的插座将其替换为模板渲染
而不是
{{outlet nav}}
使用
{{render 'nav'}}
您可以完全删除nav
的渲染部分。在为welcome
完成相同操作后,您可以完全删除renderTemplate
挂钩。
此外,使用renderTemplate
钩子没有任何问题,这是一种非常被接受的做法,在你的情况下是不必要的。
在此处阅读有关渲染助手的更多信息http://emberjs.com/guides/templates/rendering-with-helpers/#toc_the-code-render-code-helper