我试图从这里Original
逐个重复示例我的jsbin是MY JSBIN 我的帖子路线是
App.PostsIndexRoute = Ember.Route.extend({
model: function() {
return this.modelFor('posts');
}
});
App.PostsRoute = Em.Route.extend({
model: function(){
return this.store.findAll('post');
}
});
和我的标签路线完全相同。
App.TagsIndexRoute = Em.Route.extend({model:function(){ return this.modelFor('tags'); }});
App.TagsRoute = Em.Route.extend({model:function(){ return this.store.findAll('tag'); }});
虽然我的数据模板名称是data-template-name =“tags”但我可以显示数据 我无法使用data-template-name =“tags / index”
显示数据我的路由器地图看起来像这样
App.Router.map(function() {
// put your routes here
this.route('about');
this.resource('posts',{path:'/posts'},function(){
this.route('post',{path:':id'});
});
this.resource('tags',{path:'/tags'});
});
它只是默默地没有错误消息。如果在IndexRoute中我从transitionTo('tags')更改为transitionTo('posts'),那么事情就好了,不知道我哪里出错了。
答案 0 :(得分:0)
有一个记录的错误/功能,如果您的资源没有传递函数参数,它将不会创建索引路径
this.resource('tags',{path:'/tags'}, function(){});
https://github.com/emberjs/ember.js/issues/3995#issuecomment-31200805
注意:如果使用this.resource定义资源但不提供函数,则不会创建隐式resource.index路由