Emberjsにインスパイアされた: ルーターの条件付きリダイレクトEmber ルーターで一時的な状態を使用できると思いました。それがその質問の「インデックス」ルートであるためです。入力され、新しいイベントがトリガーされることなく、すぐに別の状態に遷移します。
次のコード (アクション トリガー) を使用して目的の効果を得ることができますtransitionTwice
が、URL は逆の順序で更新され、アプリが正しい順序で状態を通過し、予想される最後の状態で終わるにもかかわらず、最初の状態のままになります。
App.Router = Ember.Router.extend({
enableLogging: true,
root: Ember.Route.extend({
transitionTwice: Ember.Route.transitionTo('twiceStep1'),
index: Ember.Route.extend({
route: '/',
}),
twiceStep1: Ember.Route.extend({
route: '/twiceStep1',
connectOutlets: function (router) {
router.transitionTo('twiceStep2');
}
}),
twiceStep2: Ember.Route.extend({
route: '/twiceStep2',
})
})
}),
App.initialize();
コンソール出力は、正しい状態変化を示しています。
STATEMANAGER: Sending event 'transitionTwice' to state root.
STATEMANAGER: Entering root.twiceStep1
STATEMANAGER: Entering root.twiceStep2
ただし、URL は次のようになります。
...test2.html#/twiceStep1
誰かが私が間違っていることを見つけることができますか?
ありがとう、ジョン。