如何在Ember.js中使用嵌套路由
我是新加入Ember.js的,我坚持使用嵌套路由,我需要帮助 这就是我想要实现的目标: 我想这就是所谓的主-细节页面 更系统地说,它看起来像这样:如何在Ember.js中使用嵌套路由,ember.js,ember-cli,Ember.js,Ember Cli,我是新加入Ember.js的,我坚持使用嵌套路由,我需要帮助 这就是我想要实现的目标: 我想这就是所谓的主-细节页面 更系统地说,它看起来像这样: {{#each item in model}} {{#link-to 'users.index.show' item.id}} {{item.firstName}} {{item.lastName}}{{/link-to}} {{/each}} export default Ember.Route.extend({ renderTempl
{{#each item in model}}
{{#link-to 'users.index.show' item.id}} {{item.firstName}} {{item.lastName}}{{/link-to}}
{{/each}}
export default Ember.Route.extend({
renderTemplate: function() {
this.render({
outlet: 'detail'
});
},
model: function(params) {
return this.store.find('user', params.id);
}
});
用户索引路由显示人员列表。
用户ShowRoute显示特定人员的信息
以下是我的路线:
Router.map(function() {
this.route('users', { path: '/users'}, function() {
this.route('index', { path: ''}, function() {
this.route('show', { path: '/:id' });
});
});
});
UserIndex模板如下所示:
{{#each item in model}}
{{#link-to 'users.index.show' item.id}} {{item.firstName}} {{item.lastName}}{{/link-to}}
{{/each}}
export default Ember.Route.extend({
renderTemplate: function() {
this.render({
outlet: 'detail'
});
},
model: function(params) {
return this.store.find('user', params.id);
}
});
例如,当我尝试像“”这样的URL时,根据调试器,我能够访问控制器“users.index.show”(所需的一个)
UserShowRoute的路由如下所示:
{{#each item in model}}
{{#link-to 'users.index.show' item.id}} {{item.firstName}} {{item.lastName}}{{/link-to}}
{{/each}}
export default Ember.Route.extend({
renderTemplate: function() {
this.render({
outlet: 'detail'
});
},
model: function(params) {
return this.store.find('user', params.id);
}
});
我使用的是ember cli 1.13.8
我希望我的解释对你有意义。
提前谢谢。好的,我已经更新了你的代码。主要是路由本身的逻辑。此外,each循环的使用方式也不推荐 路由器.js 路由/用户/索引 模板/用户/索引 routes/users/view.js 模板/用户/view.hbs
好的,我已经更新了你的代码。主要是路由本身的逻辑。此外,each循环的使用方式也不推荐 路由器.js 路由/用户/索引 模板/用户/索引 routes/users/view.js 模板/用户/view.hbs
我找不到这个问题。您提供的代码看起来很好。如果它不起作用,你可以发布吗stacktrace@kristjanreinhold但是,我什么都没有error@kristjanreinhold当我将ENV.APP.LOG_TRANSITION设置为true时,它会显示'Transitioned to'users.index.show'@kristjanreinhold,我在UsersShowRoute上的模型钩子中添加了'console.LOG',并打印到控制台。看起来模板渲染有问题。@kristjanreinhold我在github上进行了回购,以防我没有提供足够的信息而找不到问题。您提供的代码看起来很好。如果它不起作用,你可以发布吗stacktrace@kristjanreinhold但是,我什么都没有error@kristjanreinhold当我将ENV.APP.LOG_TRANSITION设置为true时,它会显示'Transitioned to'users.index.show'@kristjanreinhold,我在UsersShowRoute上的模型钩子中添加了'console.LOG',并打印到控制台。看起来模板渲染有问题。@kristjanreinhold我在github上进行了回购,以防我没有提供足够的信息。我尝试了你给我的内容,但最终得到了
无法识别的错误:/users
result@NikitaLupareverrro在哪条路线上抛出?@我犯了一个错误,我使用了旧的URL,现在我已经到达视图的URLhttp://localhost:4200/users/view/2
。调试器显示当前路由为用户。查看,但页面仍为空empty@NikitaLuparev . 将此代码行添加到详细视图管线。。。。afterModel:function(model,transition){}并添加一个调试器。模型返回的是什么?+我尝试了你给我的东西,结果得到了无法识别的错误:/users
result@NikitaLupareverrro是在哪条路线上抛出的?@我犯了一个错误,我使用了旧的URL,现在我已到达view的URLhttp://localhost:4200/users/view/2
。调试器显示当前路由为用户。查看,但页面仍为空empty@NikitaLuparev . 将此代码行添加到详细视图管线。。。。afterModel:函数(模型,转换){}并添加调试器。模型返回什么+
{{model.person.firstName}}
---- content ---