我有一个带{{outlet sidebar}}的网站,可以显示导航菜单。
因为导航菜单必须独立于当前路线呈现,所以它开始变得复杂。
首次尝试使用此代码:
Ember.Route.reopen({
renderTemplate: function() {
this.render();
this.render('layout/sidebar', {
into: 'application',
outlet: 'sidebar'
});
}
});
覆盖我的应用程序中每个路由的renderTemplate
方法。
它运作良好。
但是如果我添加要通过的导航控制器,它就不再起作用了。
Ember.Route.reopen({
renderTemplate: function() {
var navCont = this.controllerFor('navigation');
this.render();
this.render('layout/sidebar', {
into: 'application',
outlet: 'sidebar',
controller: navCont
});
}
});
我检查了var navCont,它按预期保存了导航控制器。
有人知道没有控制器的原因吗?
答案 0 :(得分:1)
我不确定您为什么要使用相同的模板一遍又一遍地渲染相同的插座。您最好只在应用程序模板中使用render
。
{{render 'navigation'}}