TodoMVC チュートリアルに基づいて、詳細フィールドを todo モデルに追加しました。これは、Todo をクリックしたときにページの別の場所に表示したいと考えています。この問題は、todos/index テンプレートでこの linkTo をクリックすると発生します
{{#linkTo 'todo' this}}{{title}} {{/linkTo}}
これを todos ルートの「details」という名前のアウトレットにレンダリングしたいのですが、デフォルトのアウトレットはそのままにしておきます (todos/index がレンダリングされる場所であるため)。問題は、todo テンプレートが正しいアウトレットにレンダリングされることですが、以前に todo のデフォルト アウトレットにあったすべてのコンテンツも破棄されます。ルートで正しいコンテンツを指定しているため、古いアウトレットのコンテンツが破棄される理由がわかりません。
現在のルーターは次のようになります。
Todos.Router.map(function () {
this.resource('todos', { path: '/' }, function () {
this.route('active');
this.route('completed');
this.resource('todo', {path: ':todo_id'});
});
});
私の TodoRoute はここにあります
Todos.TodoRoute = Ember.Route.extend({
renderTemplate: function() {
this.render( {
outlet: "details",
into: "todos"
});
}
})