【发布时间】:2012-12-11 18:19:53
【问题描述】:
在此示例中,无法使返回按钮正常工作。总是返回数据库状态。
App.Router = Ember.Router.extend({
enableLogging: true,
root: Ember.Route.extend({
index: Ember.Route.extend({
route: '/',
redirectsTo: 'databases'
})
}),
databases: Ember.Route.extend({
route: '/databases',
show: Ember.Route.transitionTo('database'),
connectOutlets: function(router) {
var applicationController = router.get('applicationController');
applicationController.connectOutlet('databases');
App.router.get('databasesController').loadDatabases();
}
}),
database: Ember.Route.extend({
route: "/databases/:db_name",
connectOutlets: function(router, db) {
var applicationController = router.get('applicationController');
applicationController.connectOutlet('database', db);
}
})
})
“表演”动作链接:{{ action show db href=true }}
然后我点击“显示”操作
STATEMANAGER:将事件“show”发送到状态数据库。 ember-1.0.0-pre.2.min.js:18 STATEMANAGER:进入数据库现在按下浏览器的返回按钮
STATEMANAGER:将事件“navigateAway”发送到状态数据库。 ember-1.0.0-pre.2.min.js:18 STATEMANAGER:将事件“unroutePath”发送到状态数据库。 ember-1.0.0-pre.2.min.js:18 STATEMANAGER:将事件“routePath”发送到状态数据库。为什么是状态数据库?我想这是因为 transitionTo('database') 在表演中。什么是成功显示项目列表,单击一个并获得详细视图,而不是单击“返回”并返回列表视图的黄金路径?
【问题讨论】:
-
Sammy,我首先将
databases和database路由嵌套在root路由中。
标签: ember.js