必要条件:いくつかの非表示ページに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
を作成
を解決する必要はありません、これを達成するために
が、私はこの非常に同じような状況に対処するために何をしたかを伝えることができます私の答え –
をチェックし確認してください。ユーザがログインすると、いくつかの '$ rootScope'データが定義されます(例えば、ユーザの詳細)。隠されたページのコントローラは、それらの変数が定義されているかどうかチェックし、そうでない場合は、$ rootScopeに転送ページを設定し、index.htmlにルーティングし、パラメータをチェックし、必要に応じてログインダイアログを表示し、隠されたページへのルート。これが最高で最もエレガントなアプローチであるかどうかはわかりませんが、それは私にとってはうまくいきます。 – FDavidov
お返事ありがとうございます! @TheMechanicあなたが解決の有無にかかわらずそれを達成する方法を教えてくださいできますか? – PiyaModi