I am trying to make modal. To do this, I created a custom outlet using {{outlet modalOutlet}}My application template has two outputs, the default output and modalOutlet. However, when the modal template is displayed in {{outlet modalOutlet}}, my default {{outlet}}becomes empty.
How can I change it so that the default value {{outlet}} does not change, so I can actually display it {{outlet modalOutlet}}as a modal window or as a sidebar as part of the layout
I'm not sure if this is due to my code, or to something like a method renderTemplate()that I am missing. jsFiddle with my code here .
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>
Rushi source
share