2016-12-01 7 views
0

は、私が持っている:角度状態が読み込まれないのはなぜですか?私のアプリの開始時

$urlRouterProvider.otherwise('/loading'); 

loadCtrlに制御をもたらしています。ここにあります:

Service.getRoleDetails(config.USER_DETAILS_URL).then(useRoleDetails, handleApiError); 

     function useRoleDetails(response) { 
      if (response.id === 1) { 
       $state.go('home'); 
      } 
      else 
       $state.go('master'); 
     } 

     function handleApiError(error) { 
      Overlay.applyOverlay(false); 
     } 

このservcieコールとコールバック関数はうまくいきます。 if条件は満たされますが、何らかの形で状態はhomeに変更されません。私の画面は最初のページだけに止まっています。 (これは `/ loading 'のテンプレートです)

$stateでこのような問題に直面したことはありませんか?コンソールエラーはありませんが、

マイ設定:

$stateProvider.state('preload', { 
      url: '/loading', 
      views: { 
       "main": { 
        controller: 'landingPageCtrl as lc', 
        templateUrl: 'PP/htmls/landing.tpl.html' 
       } 
      }, 
      data: { 
       pageTitle: 'PricingPlan' 
      } 
     }) 
     .state('home', { 
      url: '/pricingplan', 
      views: { 
       "main": { 
        controller: 'PPCtrl as pp', 
        templateUrl: 'PP/htmls/pricing-position.tpl.html' 
       } 
      }, 
      data: { 
       pageTitle: 'Pricing Plan' 
      } 
     }) 
     .state('master', { 
      url: '/master', 
      views: { 
       "main": { 
        controller: 'masterDataCtrl as mdc', 
        templateUrl: 'PP/htmls/MasterData/masterData.tpl.html' 
       } 
      }, 
      data: { 
       pageTitle: 'Master Data' 
      } 
     }) 
     .state('logout',{ 
      url: '/loggedOut', 
      views: { 
       "main": { 
        controller: 'logOutCtrl as lc', 
        templateUrl: 'PP/htmls/logout.tpl.html' 
       } 
      }, 
      data: { 
       pageTitle: 'Session Expired' 
      } 
     }); 


    } 
+0

あなたは、(response.id === 1)が正しく動作しているかどうか確信していますか?yesの場合コントローラに$ locationを注入して$ location.path( "yourstate")を試すことができます –

+0

はい。条件が真になりました.. –

+0

あなたの状態を呼び出すか宣言すると何かが起こりますなぜあなたは状態の設定でデフォルトとして言及したように、ロードする状態に移動しますか? –

答えて

0

私は深く掘って、すべてが(問題の)角度と私の上記の実装でOKだったことがわかりました。しかし、私は $stateChangeStartイベントリスナーに既存のロジックを持っていました。状態の変化は制限されていました。

この種の問題に直面している人は、リスナー$stateChangeStartを1つ見てください。

関連する問題