テンプレート
<script type="text/x-handlebars">
<div>
<ul id="navbar">
<li>{{#linkTo 'projects'}}Projects{{/linkTo}}</li>
<li>{{#linkTo 'about'}}About{{/linkTo}}</li>
</ul>
</div>
{{outlet}}
</script>
<script type="text/x-handlebars" id="projects">
<div class="l-wrap">
<table class="list">
<thead>
<tr>
<th>Project Name</th>
</tr>
</thead>
<tbody>
{{#each model}}
<tr>
<td>{{#linkTo 'project' this}}{{name}}{{/linkTo}}</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
<div>
{{outlet}}
</div>
</script>
<script type="text/x-handlebars" id="project">
<p>Project Details for {{name}}</p>
<p>Description: {{description}}</p>
</script>
ルート 1
this.resource('projects', function() {
this.resource('project', { path: ':project_id'});
});
ルート 2
this.resource('projects');
this.resource('project', { path: 'project/:project_id'});
問題
私が達成しようとしているのは、プロジェクトのリンクをクリックすると、プロジェクトのリストが表示されることです。リスト内のプロジェクト名をクリックすると、リストが消えて、クリックしたプロジェクトの詳細が表示されます。
ルート 1の配置では、プロジェクトの一覧が消えません。だから使えない。
ルート 2の配置では、プロジェクトのリストが消え、プロジェクト リンクの CSS 'active' クラスが消えることを除いて、すべてが期待どおりです。私はまだプロジェクト セクションにいるので、「アクティブな」クラスをなくしたくありません。
どうすればこれを達成できますか?