1

必要条件:いくつかの非表示ページにURLを入力すると、ページがレンダリングされず、ログインに成功すると最初の1つのモーダルがポップアップ表示されます。隠れているページを画面に表示する必要があります。ログイン用のポップアップモーダル

私の考えは:私のアプリケーションにui-routerを使用しているので、解決状態を使用するには。

しかし、私はいくつかのページをリクエストしながらモーダルをどのように開くことができないのか、それと同時にどのように私もそれを防ぐことができます。

.state('deviceManagement', { 
     url: "/deviceManagement", 
     templateUrl: "partials/settings/deviceManagement.html", 
     controller: "deviceManagementCtrl", 
     resolve: { 
      check: function(engineerPageFactory){ 
       engineerPageFactory.loginEngineer(); 
      } 
     } 
    }) 

私の考えは、解決から呼び出された工場でモーダルを開くようなものです。

app.factory('engineerModalFactory', function($modal){ 
    return { 
     loginEngineer: function($modal){ 
      $modal.open({ 
       templateUrl: "engineerModal.html" 
      }) 
     } 
    } 
}); 

このようなものです。私を正しい方法で案内してください。私はそれを可能にする方法。 ありがとうございます!あなたが約束を返しますサービスcheckUserServiceを作成

を解決する必要はありません、これを達成するために

+0

が、私はこの非常に同じような状況に対処するために何をしたかを伝えることができます私の答え –

+0

をチェックし確認してください。ユーザがログインすると、いくつかの '$ rootScope'データが定義されます(例えば、ユーザの詳細)。隠されたページのコントローラは、それらの変数が定義されているかどうかチェックし、そうでない場合は、$ rootScopeに転送ページを設定し、index.htmlにルーティングし、パラメータをチェックし、必要に応じてログインダイアログを表示し、隠されたページへのルート。これが最高で最もエレガントなアプローチであるかどうかはわかりませんが、それは私にとってはうまくいきます。 – FDavidov

+0

お返事ありがとうございます! @TheMechanicあなたが解決の有無にかかわらずそれを達成する方法を教えてくださいできますか? – PiyaModi

答えて

0

あなたのコントローラロードロードcheckUserServiceユーザを識別する方法がログインしているかどうかを確認しますか?

あなたは確かに応答を真または偽にします。ユーザーは、例えば、他の状態へのリダイレクトでそれをログに記録されていない場合

$state.go('login')

とloginControllerにあなたがモデル

+0

私はチェックしたくありません、私はページを非表示にするたびに、ログインするためにモーダルを開きたいと思います。 – PiyaModi

0

を開くことができますが、モーダル内toogle変数を取り、開く必要があります真と偽の条件に関するページ。

0

同じ状態の動的テンプレートURLを呼び出すだけです。

$stateProvider.state('deviceManagement', { 
    templateUrl: function (MyAuthService){ 

     MyAuthService 
     .checkLogin() 
     .then(function(loggedInFlag){ 
      if(loggedInFlag ===true){ 
       return 'partials/settings/deviceManagement.html'; 
      } 
      else { 
       return 'partials/auth/loginModal.html'; 
      } 

     }) 
    } 
}) 

は、詳細情報については、私はあなたが詳細については、決意を使用せずにそれを達成することができると思う。このans

関連する問題