1
需要您的建議。單頁應用程序:登錄後返回
我有angularjs應用程序,使用ui.router進行路由。
用戶首先顯示一個登錄屏幕,登錄時顯示一個網格。 網格分頁。
現在,如果用戶點擊瀏覽器後退按鈕,用戶將被帶到登錄屏幕。
1.這是正確的行爲,你會建議嗎?
2.另外,如果用戶移動到3頁使用分頁應該後退按鈕使用戶到前一頁。
在此先感謝
需要您的建議。單頁應用程序:登錄後返回
我有angularjs應用程序,使用ui.router進行路由。
用戶首先顯示一個登錄屏幕,登錄時顯示一個網格。 網格分頁。
現在,如果用戶點擊瀏覽器後退按鈕,用戶將被帶到登錄屏幕。
1.這是正確的行爲,你會建議嗎?
2.另外,如果用戶移動到3頁使用分頁應該後退按鈕使用戶到前一頁。
在此先感謝
1)你可以阻止客戶端回去用$stateChangeStart
登錄。例如像這樣:
/**
* Before state change/page switch
*/
$rootScope.$on("$stateChangeStart", function (event, next, current, fromState, fromParams, options) {
//verify login state
if ($cookies.get('loggedIn') !== undefined) {
if (next.templateUrl !== "views/login.html") {
$timeout (function() {
event.preventDefault();
$state.go('app.overview');
}, 50);
}
}
});
2)爲您的分頁中的所有網頁的網址,以便用戶能夠使用瀏覽器的歷史去前進/後退:
.state('app.list', {
url: '/list/:pageId',
templateUrl: 'views/list.html'
})
更改URL在頁面點擊不用重新加載使用notify: false
:
$state.go('app.list', {pageId: yourNextdPageId}, {notify: false})
這完全取決於您自己決定是否您想要的行爲或不行爲。 –
任何意見或建議Anony? – lin