この例では、戻るボタンが正しく機能しません。常にデータベースの状態に戻ります。
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);
}
})
})
アクションへのリンク'show':{{ action show db href=true }}
STATEMANAGER:ルートember-1.0.0-pre.2.min.js:18を入力しています STATEMANAGER:イベント'navigateAway'をステートルートに送信しています。ember-1.0.0-pre.2.min.js:18 STATEMANAGER:イベント'unroutePath'を状態ルートに送信しています。ember-1.0.0-pre.2.min.js:18 STATEMANAGER:イベント'routePath'を状態ルートに送信しています。ember-1.0.0-pre.2.min.js:18 STATEMANAGER:root.index ember-1.0.0-pre.2.min.js:18と入力します STATEMANAGER:データベースに入る
次に、「表示」アクションをクリックします
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')
ショーアクションのせいだと思います。「戻る」をクリックしてリストビューに戻るよりも、アイテムのリストを正常に表示し、1つをクリックして詳細ビューを表示するためのゴールデンパスは何ですか?