2017-06-03 10 views
0

私はanglejs1.6.4バージョンとangle-ui-routerバージョン1.0.3を使って、anglejsの初心者です。私は$stateChangeSuccessを使用して以前の状態を取得している記事を見たことがありますが、このイベントはui-routerバージョン1.0.0の上で廃止されました(reference from here)そのため、$ transitions.onSuccessを使用する必要がありますが、 。これまでのところ、私はこれを書いて、状態が変わったときに "stateChange success"というメッセージを表示しています。しかし、私はさらに進んでいくためにいくつかの例が必要です。

App.js:

.run(function ($transitions) { 
    $transitions.onSuccess({}, function() { 
     console.log("statechange success"); 
    }); 
+0

するonSuccess(に渡されたコールバック関数を)ここに文書化されていますhttps://ui-router.github.io /ng1/docs/latest/interfaces/transition.transitionhookfn.html。 Transitionオブジェクトが引数として使用されていることがわかります。これについては、https://ui-router.github.io/ng1/docs/latest/classes/transition.transition-1.htmlを参照してください。 $ from()メソッドがあることがわかります。 –

+0

私の答えはあなたの質問に有効でしたか?以前は$ stateChangeSuccessをプロジェクトで使用していました。それがうまくいくなら、あなたは私の答え – hasan

答えて

1

これは私が欲しいものです。 $ transitions.onSuccessの代わりに、$ stateChangeSuccessを使用してリフレッシュして以前の状態に戻るための例は

.run(function ($transitions, $state) { 
    var previousState; 
    var previousStateParameters; 
    $transitions.onSuccess({}, function (transition) { 
     previousState = transition.from().name; 
     previousStateParameters = transition.params('from'); 
    }); 
    $transitions.back = function() { 
     $state.go(previousState, previousStateParameters, { reload: true }); 
    } 
}); 
関連する問題