我尝试创建几个将使用相同菜单的页面,以便我可以轻松保存菜单状态并避免代码重复。我的问题是菜单模板没有在页面的菜单插座中呈现。
以下是代码:
App.Router.map(function() {
// put your routes here
this.resource('profil', function() {
this.route('news');
this.route('menu');
});
});
App.MenuRoute = Ember.Route.extend({
renderTemplate: function() {
this.render({
into: 'profil/news',
outlet: 'menu',
});
}
});
在index.html中我有:
<script type="text/x-handlebars" id="profil/news">
...
{{outlet}}
{{outlet menu}}
</script>
<script type="text/x-handlebars" id="menu">
...
</script>
模板&#39; profil / news&#39;已呈现,但模板&#39;菜单&#39;根本没有渲染:它应该在'profil / news&#39;内部呈现当我访问profil / news时。有什么想法吗?
谢谢
答案 0 :(得分:0)
问题是我需要使用:
<script type="text/x-handlebars" id="profil/news">
...
{{outlet}}
{{render 'profil/menu'}}
</script>
并更改车把的名称以匹配路线:
<script type="text/x-handlebars" id="profil/menu">
此外,以App.Menuroute开头的声明是不必要的,并且会被删除。
现在一切都按预期工作了。