需求是:當我爲某個隱藏頁面輸入URL時,頁面不應該渲染,首先一個模式應該彈出登錄,如果登錄成功那麼應該在屏幕上呈現隱藏頁面。彈出窗口模式登錄去解決狀態的隱藏頁面
我的想法是:若要在狀態下使用解析,因爲我正在使用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"
})
}
}
});
就是這樣。請指導我正確的方式。我如何才能做到這一點。 在此先感謝!
我認爲你可以實現它,而無需使用決心查詢詳情我的回答 –
我可以告訴你,我做了什麼,以應付這個非常相同的情況。當用戶登錄時,會定義一些'$ rootScope'數據(例如用戶的詳細信息)。隱藏頁面的控制器檢查是否定義了這些變量,如果沒有,則將轉發頁面設置到$ rootScope中,路由到index.html,該頁面還檢查參數,並在需要時顯示登錄對話框,並且在成功登錄後,路由到隱藏頁面。不知道這是最好和最優雅的方法,但它適用於我。 – FDavidov
謝謝你回答你們倆! @TheMechanic你能告訴我我可以如何實現它或有沒有解決? – PiyaModi