Ember.js 余烬如何不呈现父模板?
我有一个嵌套路由,如下所示:Ember.js 余烬如何不呈现父模板?,ember.js,Ember.js,我有一个嵌套路由,如下所示: Router.map(function() { this.route('home', {path : '/'}); this.resource('posts', function() { this.route('new', {path: '/:post_id'}); }); }); 我的“posts”页面显示最近的帖子,而我的“posts/new”页面应该只显示创建新帖子的表单,所以我不应该在“posts/new”中呈现“posts”页面的模板。
Router.map(function() {
this.route('home', {path : '/'});
this.resource('posts', function() {
this.route('new', {path: '/:post_id'});
});
});
我的“posts”页面显示最近的帖子,而我的“posts/new”页面应该只显示创建新帖子的表单,所以我不应该在“posts/new”中呈现“posts”页面的模板。我怎样才能做到这一点,这是正确的方法吗 将负责呈现最近帖子的模板代码从
posts
移动到posts/index
。这样,您只能在posts/new
中获得一个表单
如果没有生成posts/index
模板,则可以运行:
ember g route posts/index
Daniel的另一个答案是,如果模板没有嵌套,那么路由可能没有嵌套。以下是您的路由器的外观:
Router.map(function() {
this.route('home', {path : '/'});
this.route('posts');
this.route('posts.new', {path: 'posts/:post_id'});
});
文件路径仍然是app/routes/posts/new.js。或pods等效物。旁注:
此.resource
已弃用,您只能继续使用此.route
。区别在于this.resource
不会重置名称空间,在本例中,这并不重要,因为posts
已经是顶级的。@lock谢谢,不知道弃用