【发布时间】:2014-02-22 23:03:26
【问题描述】:
我在模板中呈现内容时遇到了一些困难。
这似乎是一件容易的事,但无论如何我都做不到。
有人可以帮助我吗?
应用程序视图
<script type="text/x-handlebars" id="application">
<header class="logo"><!-- ... --></header>
<nav><!-- ... --></nav>
<hr class="top" />
{{outlet}}
<hr class="bottom" />
<footer><!-- ... --><div class="clear"></div>
</footer>
</script>
我有路线:
this.resource('exibition', {path: '/exposicoes/:exibition_id'}, function() {
this.route('artist', {path: '/artistas/:artist_id'});
});
那么链接exposicoes/2显示的是application outlet上id=2的博览会页面,对吧?
展览视图:
<script type="text/x-handlebars" id="exibition">
<div class="exibitions">
<h1>{{#link-to 'exibition'}}{{title}}{{/link-to}}</h1>
<div class="left">
<h2>Apresentação</h2>
{{{text}}}
</div>
<div class="right"><h2>Artistas</h2>
<ul>
{{#each artist in artists}}
<li>{{#link-to 'exibition.artist' artist}}{{artist.name}}{{/link-to}}</li>
{{/each}}
</ul>
</div>
<div class="clear"></div>
</div>
</script>
如何让ExbitionView 中的艺术家链接在{{{text}}} 替换内容的同一区域打开?
我尝试为此使用插座,例如:
<div class="left">
<h2>Apresentação</h2>
{{outlet showhere}}
</div>
并在 ExbitionView 被渲染时使用 renderTemplate(和 disconnectOutlet 清除)填充它,但如果用户使用返回按钮或什至页面上的链接从 /exibitions/2/artists/2 返回到 /exibitions/2,则内容不会显示再次。
【问题讨论】:
-
你能把它放在一个jsfiddle中吗?我认为您正在做我最近必须做的事情,但如果我能看到它,您的进展会更容易想象吗?