【发布时间】:2013-04-05 00:46:00
【问题描述】:
我正在尝试渲染模式。为此,我使用{{outlet modalOutlet}} 创建了一个自定义插座我的应用程序模板有两个插座,默认插座和modalOutlet。但是,当模态模板呈现为{{outlet modalOutlet}} 时,我的默认{{outlet}} 变为空。
如何更改它,以便默认的 {{outlet}} 不会更改,因此我实际上可以将 {{outlet modalOutlet}} 呈现为模式窗口,或作为布局的一部分的侧边栏
我不确定这是由于我的代码,还是与我缺少的 renderTemplate() 方法有关。 jsFiddle with my code is here。
// Router
App.Router.map(function(){
this.route('contributors');
this.route('contributor', {path: '/contributors/:contributor_id'});
});
App.ContributorsRoute = Ember.Route.extend({
model: function() {
return App.Contributor.all();
},
});
App.ContributorRoute = Ember.Route.extend({
renderTemplate: function() {
this.render('contributor', {
outlet: 'modalOutlet'
});
}
});
<script type="text/x-handlebars" data-template-name="application">
<nav>
{{#linkTo "index"}}Home{{/linkTo}}
{{#linkTo "contributors"}}Contributors{{/linkTo}}
</nav>
<div style='padding:5px;margin:5px;border:1px dotted red;'>
Default Outlet
{{outlet}}
</div>
<div style='padding:5px;margin:5px;border:1px dotted blue;'>
modalOutlet
{{outlet modalOutlet}}
</div>
</script>
【问题讨论】:
标签: ember.js