2017-06-30 3 views
0

さまざまな状態が定義された角度アプリがあります。戻るボタンを使用して以前の状態に戻ることはできません。シミュレーションの一部であり、シミュレーションフローを妨害するためです。角度UIルータを使用して特定の状態に戻るために戻るボタンを無効にします。

ブラウザの[戻る]ボタンを無効にして、ユーザーをシミュレーションの開始状態にする方法はありますか?

angular.module('participant').config(function($stateProvider, $urlRouterProvider) { 
    $stateProvider 
     .state('simulations', { 
      url: '/', 
      controller: 'SimulationIndexController', 
      templateUrl: '/angular_templates/simulations/index.html', 
     }) 
     .state('simulation.content', { 
      // other routes 
     }); 

は、私は、ユーザーがブラウザの[戻る]ボタンを押したとき'simulations'状態に行きたいが、私はこれを実現する方法がわからないです。

答えて

0

あなたは利用location: 'replace'トップ

.run(function($state) { 

    $(window).on('popstate', function(event) { 
     // This event fires on current history change 

     $state.go("simulations"); 

    }, false); 

}) 
+0

私はそれが試してみる価値があると思います! –

0

に追加できる状態遷移を行うとき:

$state.go("simulation.content.state2",{location:'replace'}); 

replaceオプションを使用することにより、個々のシミュレーションステップは、ブラウザの履歴に保存されません。ユーザが戻るボタンを押すと、ユーザは前のコンテンツの代わりに最初に戻る。

関連する問題