0

单击后退按钮时,我遇到了模板未呈现的问题。从我读过的内容来看,这是一个问题,因为父模板永远不会消失,子路由应该呈现到父路由中。但是,我希望用户在添加记录或编辑记录时有一个干净的页面。我目前正在将模板渲染到主应用程序模板上的命名插座中。

在这种情况下,应该将 newrecord 和 editrecord 呈现为表单。但是,我希望 URL 为 localhost/form/formID/newrecord,以便用户知道他们仍在表单中。

问题:实现这一目标的最佳方法是什么?我是否必须将路线更改为子资源或将它们移动为更高级别的资源?有没有更好的方法来实现我想要的?

App.Router.map(function(){
this.resource('home', { path: '/' });
this.resource('form', { path: '/forms/:form_id' }, function() {
       this.route('newrecord', { path: '/newrecord' }); 
       this.route('editrecord', {path :'/editrecord' });
    });
});

模板

<script type="text/x-handlebars" data-template-name="application">
{{ outlet }}
{{ outlet newrecord }}
{{ outlet editrecord }}
</script>
4

1 回答 1

0

我发现Teddy Zenny在这里给出了最好的回答。

Ember.js:使用嵌套路由时后退按钮不刷新索引视图

于 2013-09-24T19:29:37.370 回答