我正在将现有应用程序移植到新的路由器 api,但找不到有人进入路由器并抓取应用程序商店以查询数据的示例。
这是我的旧路由器
CodeCamp.Router = Ember.Router.extend({
root: Ember.Route.extend({
index: Ember.Route.extend({
route: '/',
connectOutlets: function(router, context) {
router.get('applicationController').connectOutlet('sessions', router.get('store').findAll(CodeCamp.Session));
}
})
})
});
这是我的新路由器的开始,但“router.get('store')”不喜欢路由器这个词,关键字“this”也返回未定义。
CodeCamp.Router.map(function(match) {
match("/").to("sessions");
});
CodeCamp.SessionsRoute = Ember.Route.extend({
renderTemplates: function() {
this.render('sessions');
},
setupControllers: function() {
this.set('controller.content', this.get('store').findAll(CodeCamp.Session));
}
});
更新
我可以让它与以下一起工作(它看起来很丑,我更喜欢另一种方式)
setupControllers: function() {
this.set('controller.content', CodeCamp.Session.all().get('store').findAll(CodeCamp.Session));
}