Ember.js 灰烬嵌套路线获胜';你不来吗?
我看了一遍文件,看不出我做错了什么 路由器.mapEmber.js 灰烬嵌套路线获胜';你不来吗?,ember.js,routing,routes,nested,Ember.js,Routing,Routes,Nested,我看了一遍文件,看不出我做错了什么 路由器.map App.Router.map(function(){ this.resource('users', function(){ this.resource('user', { path: ':user_id' }); this.resource('add'); }); }); 车把 <script type="text/x-handlebars" id="users/add"> <h3>Add
App.Router.map(function(){
this.resource('users', function(){
this.resource('user', { path: ':user_id' });
this.resource('add');
});
});
车把
<script type="text/x-handlebars" id="users/add">
<h3>Add User</h3>
</script>
这是我的jsbin:您的代码有一些错误,因为
把手
模板块是通过数据模板名称来识别的,而不是通过id来识别的。您还可以将add
声明为嵌套的route
而不是嵌套的resource
-请参见此处更新的(&working)jsbin:有趣的是,在返回此处之前,我刚刚找到了它:“route”而不是“resource”。。天啊,总是那些小细节。不过非常感谢,关于id而不是数据模板名称语法,后者肯定更简洁,但我养成了使用ember指南中id的习惯。。不知道为什么两者都有,但id确实有效?p.s认为你的化身是一头潜入水中的虎鲸ocean@micahblu我检查了它,事实上,当使用id
而不是数据模板名称时,把手
脚本块也会被识别出来。。。酷!我一直以为我的头像是一只蝙蝠猫,但它似乎是某种口袋妖怪;)
App.UsersRoute = Ember.Route.extend({
model: function(){
console.log("Users route triggered");
return App.Users;
}
});
App.UserRoute = Ember.Route.extend({
model: function(params){
return App.Users.findBy('id', params.user_id);
}
});
App.UserAddRoute = App.UserRoute.extend({
renderTemplate: function(){
console.log("Users Add Route triggered");
this.render('users/add');
}
});